์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ์คํธ๋ฆผ๋ฆฟ ๊ธฐ๋ณธ
- ์๋ฐ๊ณต๋ถ
- Streamlit๊ธฐ์ด
- ์๋ฐ์ด๋ณด
- serverless
- JavaScript
- Flutter
- ์น๋์๋ณด๋ ์ ์
- java
- streamlit
- ์น๋์๋ณด๋ ๊ธฐ์ด
- ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ
- ์๋ฐํ๋ก๊ทธ๋๋ฐ
- Streamlit๊ธฐ๋ณธ
- ์๋ฐ์คํฌ๋ฆฝํธ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- MySQL
- ์๋ฐ
- Android
- Pandas
- ํ๋ค์ค
- ์คํธ๋ฆผ๋ฆฟ
- ํ์ด์ฌ
- ํ์ด์ฌ๊ณต๋ถ
- ์๋๋ก์ด๋ ์คํ๋์ค
- db
- ํ๋ค์ค๊ณต๋ถ
- RESTful API
- ์๋ฐ๊ธฐ์ด
- ์๋ฐ์คํฌ๋ฆฝํธ ๊ณต๋ถ
- Today
- Total
ruriruriya
[JavaScript] ์๋ฐ์คํฌ๋ฆฝํธ - ํ์ดํ ํจ์(Arrow Function) ๋ณธ๋ฌธ
[JavaScript] ์๋ฐ์คํฌ๋ฆฝํธ - ํ์ดํ ํจ์(Arrow Function)
๋ฃจ๋ฆฌ์ผใ 2024. 4. 23. 16:09
์๋ฐ์คํฌ๋ฆฝํธ์ ํ์ดํ ํจ์(arrow function)๋ ES6์์ ๋์ ๋ ๋ฌธ๋ฒ์ผ๋ก, ํจ์๋ฅผ ๋ณด๋ค ๊ฐ๊ฒฐํ๊ฒ ์์ฑํ ์ ์๋ ๋ฐฉ๋ฒ์ด๋ค. ํ์ดํ ํจ์๋ ๊ธฐ์กด์ function ํค์๋๋ฅผ ์ฌ์ฉํ๋ ํจ์ ํํ์์ ๋์ฒดํ ์ ์์ผ๋ฉฐ, ๋ช ๊ฐ์ง ์ค์ํ ์ฐจ์ด์ ์ด ์๋ค.
ํ์ดํ ํจ์์ ๊ธฐ๋ณธ ๊ตฌ์กฐ
์ฌ๊ธฐ์์ functionName์ ํจ์์ ์ด๋ฆ,
parameters๋ ๋งค๊ฐ๋ณ์,
=>๋ ํ์ดํ ๊ธฐํธ๋ก,
์ค๋ฅธ์ชฝ์๋ ํจ์์ ๋ณธ๋ฌธ์ด ์์นํ๋ค.
const functionName = (parameters) => {
// ํจ์ ๋ณธ๋ฌธ
}
ํ์ดํ ํจ์์ ํน์ง
- ๊ฐ๊ฒฐ์ฑ: ํ์ดํ ํจ์๋ function ํค์๋๋ฅผ ์๋ตํ๊ณ , ํจ์ ๋ณธ๋ฌธ์ด ๋จ์ผ ํํ์์ธ ๊ฒฝ์ฐ ์ค๊ดํธ์ return ๋ฌธ์ ์๋ตํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด:์ด ํจ์๋ a์ b๋ฅผ ๋ํ ๊ฐ์ ์๋์ผ๋ก ๋ฐํํฉ๋๋ค.
const add = (a, b) => a + b;
- this ๋ฐ์ธ๋ฉ์ ์ฐจ์ด: ํ์ดํ ํจ์๋ ์์ฒด this ๋ฐ์ธ๋ฉ์ ๊ฐ์ง์ง ์์ต๋๋ค. ๋์ , ํ์ดํ ํจ์๋ ์์ ์ ํฌํจํ๋ ์ธ๋ถ ํจ์์ this ๊ฐ์ ์ฌ์ฉํฉ๋๋ค. ์ด๋ ๋ฉ์๋ ํจ์๋ ์์ฑ์ ํจ์๋ก๋ ์ ํฉํ์ง ์์ง๋ง, ์ผ๋ฐ ํจ์์์ this์ ๋ฌธ๋งฅ์ด ๋ณ๊ฒฝ๋๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.
- ์์ฑ์๋ก ์ฌ์ฉํ ์ ์์: new ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ํ์ดํ ํจ์๋ฅผ ์์ฑ์๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ํ์ดํ ํจ์๋ prototype ์์ฑ์ด ์์ต๋๋ค.
- ์ธ์ ๊ฐ์ฒด(arguments) ๋ฏธ์ง์: ํ์ดํ ํจ์ ๋ด๋ถ์์๋ arguments ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋์ , ๋๋จธ์ง ๋งค๊ฐ๋ณ์(rest parameters)๋ฅผ ์ฌ์ฉํ์ฌ ํจ์์ ์ ๋ฌ๋ ์ธ์๋ฅผ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.
์์
[๊ฐ๋จํ ํ์ดํ ํจ์]
const greet = name => `Hello, ${name}!`;
console.log(greet("World")); // "Hello, World!"
[์ค๊ดํธ์ return ์ฌ์ฉ]
const getFullName = (firstName, lastName) => {
return `${firstName} ${lastName}`;
};
console.log(getFullName("Jane", "Doe")); // "Jane Doe"
[ํจ์์ ๊ฐ์ฒด ๋ฆฌํฐ๋ด ๋ฐํ]
const getObject = () => ({ key: 'value' });
console.log(getObject()); // { key: 'value' }
ํ์ดํ ํจ์๋ ํนํ ์ฝ๋ฐฑ ํจ์๋ ํจ์๊ฐ ๋ค๋ฅธ ํจ์์ ์ ๋ฌ๋์ด์ผ ํ ๋ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ค. ๊ทธ๋ฌ๋ this๋ ์์ฑ์, arguments์ ๊ด๋ จ๋ ๊ธฐ๋ฅ์ด ํ์ํ ๊ฒฝ์ฐ์๋ ๊ธฐ์กด์ function ํค์๋๋ฅผ ์ฌ์ฉํ๋ ํจ์๋ฅผ ๊ณ ๋ คํด์ผ ํ๋ค.