์ค์ํ ์ฐธ๊ณ ์ฌํญ. ์ด ๊ธ์ ๋ ๋ถ๋ถ์ ์๋ "ํจ์๋ ๊ฐ์ฒด๋ง ๋ฐํ"ํ๋ ํน์ ์ฌ๋ก๋ฅผ ๋์น์ง ๋ง์ธ์!
1) ๊ธฐ๋ณธ ๊ตฌ๋ฌธ:
const add = (a, b) => {
const result = a + b;
return result; // like in "normal" functions, parameters and return statement are OPTIONAL!
};
์ฃผ๋ชฉํ์ค ๋งํ ์ฌํญ. ๋ง์ง๋ง์ ์ธ๋ฏธ์ฝ๋ก , ํจ์ ํค์๋ ์์, ๋งค๊ฐ๋ณ์/์ธ์์ ๊ดํธ.
2) ์ ํํ ํ๋์ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฐ๋ ๊ฒฝ์ฐ ๋ ์งง์ ๋งค๊ฐ๋ณ์ ๊ตฌ๋ฌธ.
const log = message => {
console.log(message); // could also return something of course - this example just doesn't
};
์ฃผ๋ชฉํ์ค ๋งํ ์ฌํญ. ๋งค๊ฐ๋ณ์ ๋ชฉ๋ก์ ๊ดํธ๋ ์๋ตํ ์ ์์ต๋๋ค(์ ํํ ํ๋์ ์ธ์์ ๋ํด).
3) ์ธ์๋ฅผ ๋ฐ์ง ์์ ๊ฒฝ์ฐ ๋น ๋งค๊ฐ๋ณ์ ๊ดํธ.
const greet = () => {
console.log('Hi there!');
};
์ฃผ๋ชฉํ์ค ๋งํ ์ฌํญ. ๊ดํธ๋ฅผ ์ถ๊ฐํด์ผ ํฉ๋๋ค(์๋ตํ ์ ์์)
4) ์ ํํ ํ๋์ ํํ์์ด ์ฌ์ฉ๋๋ ๊ฒฝ์ฐ ๋ ์งง์ ํจ์ ๋ณธ๋ฌธ.
const add = (a, b) => a + b;
์ฃผ๋ชฉํ์ค ๋งํ ์ฌํญ. ์ค๊ดํธ ๋ฐ return ๋ฌธ ์๋ต ๊ฐ๋ฅ, ํํ์ ๊ฒฐ๊ณผ๋ ํญ์ ์๋ ๋ฐํ
5) ํจ์๊ฐ ๊ฐ์ฒด๋ฅผ ๋ฐํํฉ๋๋ค(4)์ ์์์ ๊ฐ์ด ๊ตฌ๋ฌธ์ด ๋จ์ถ๋จ).
const loadPerson = pName => ({name: pName });
์ฃผ๋ชฉํ์ค ๋งํ ์ฌํญ. ๊ฐ์ฒด์ ๋ํ ์ถ๊ฐ ๊ดํธ๊ฐ ํ์ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ค๊ดํธ๋ ํจ์ ๋ณธ๋ฌธ์ ๊ตฌ๋ถํ๋ ๊ธฐํธ๋ก ํด์๋๋ฏ๋ก ๊ตฌ๋ฌธ ์ค๋ฅ๊ฐ ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค.
๋ง์ง๋ง ์์๋ ํท๊ฐ๋ฆด ์ ์์ต๋๋ค. ๋ณดํต JavaScript์์ ์ค๊ดํธ๋ ํญ์ ์ ํํ ํ๋์ ์๋ฏธ๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค.
const person = { name: 'Max' }; // ์ด ์ค๊ดํธ๋ ๊ฐ์ฒด ์์ฑ์ ์ฐ์
if (something) { ... } // ์ค๊ดํธ๋ก if ๋ฌธ ๋ธ๋ก์ ํ๊ธฐํจ
๊ทธ๋ฌ๋ ํ์ดํ ํจ์๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ, ์ค๊ดํธ๋ ๋ ๊ฐ์ง ์๋ฏธ๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค.
1) ํจ์ ๋ณธ๋ฌธ ํ์(๊ธฐ๋ณธ ํ์์์)
2) ๋ฐํํ๋ ค๋ ๊ฐ์ฒด ์์ฑ(์งง์ ํจ์ ๋ณธ๋ฌธ ํ์์ผ๋ก)
JavaScript์ ์ํํ๋ ค๋ ์์ ์ "์๋ฆฌ๋ ค๋ฉด" ์์ ํ์๋ ๊ฒ์ฒ๋ผ ํํ์(์: ๊ฐ์ฒด ์์ฑ)์ ๊ดํธ๋ก ๋ฌถ์ผ์ธ์.
'๐ป FE > ๐ JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋ฐ์คํฌ๋ฆฝํธ bind ์ธ์ ์ฐ๋ (0) | 2025.05.14 |
---|---|
"ํจ์๋ ๊ฐ์ฒด๋ค" (0) | 2025.05.13 |
์ฌ๊ท์ ์ (0) | 2025.04.26 |
์๋ฐ์คํฌ๋ฆฝํธ์์ on๊ณผ handle์ ๊ด๊ณ์ ๋ํด ์์๋ณด์๋ค. (0) | 2025.04.20 |
๋ฐ๋๋ผ JS ํด๋์ค ์ฝ์ง ๊ธฐ๋ก: ์ค๊ณ๋ถํฐ this์์ ์จ๋ฆ๊น์ง (0) | 2025.04.06 |