TIL01. JavaScript : Function ์ •๋ฆฌ

ID์งฑ์žฌยท2021๋…„ 8์›” 23์ผ
0

JavaScript

๋ชฉ๋ก ๋ณด๊ธฐ
13/19
post-thumbnail

๐ŸŒˆ Function ์ •๋ฆฌ

๐Ÿ”ฅ Why : ํ•จ์ˆ˜๋ฅผ ์™œ ์“ฐ๋‚˜?

๐Ÿ”ฅ Return : ๊ฐ’๋งŒ ์ฐ๋Š” ํ•จ์ˆ˜์™€ ๊ฐ’์„ ๋‹ด๋Š” ํ•จ์ˆ˜

๐Ÿ”ฅ Parameter : ๊น€๋ฐฅ ๋จธ์‹ ๊ณผ ์†์žฌ๋ฃŒ

๐Ÿ”ฅ Copy Function : ๊น€๋ฐฅ ๋จธ์‹ ์„ ๋ณต์‚ฌํ•˜๋Š” ๋ฒ•๊ณผ ๊น€๋ฐฅ์„ ๋ณต์‚ฌํ•˜๋Š” ๋ฒ•

๐Ÿ”ฅ Arrow Function


1. Why : ํ•จ์ˆ˜๋ฅผ ์™œ ์“ฐ๋‚˜?


๐Ÿค” ํ–‰์šด์˜ ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ด…์‹œ๋‹ค:)

ํ•จ์ˆ˜๋„ ๋ณ€์ˆ˜์ฒ˜๋Ÿผ ์ƒ์ž์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ•จ์ˆ˜๋Š” ์–ด๋– ํ•œ ์ž‘๋™์ด๋‚˜ ์ฒ˜๋ฆฌ ๊ณผ์ •์„ ๋‹ด์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ํ•จ์ˆ˜๋„ ๋ณ€์ˆ˜์— ๋‹ด์„ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋‹จ์ง€ ์–ด๋–ค ๋‚ด์šฉ์„ ๋‹ด๊ธฐ๋งŒ ํ•˜๋Š” ๋ณ€์ˆ˜์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ํ•จ์ˆ˜๋Š” ๊ทธ ์ž์ฒด๋กœ ์–ด๋– ํ•œ ๊ธฐ๋Šฅ("๊ธฐ๋Šฅ์„ ๋ชปํ•˜๋Š” ๊ฒƒ๊ณผ ๊ธฐ๋Šฅ์„ ์•ˆํ•˜๋Š” ๊ฒƒ์€ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.")์„ ๊ฐ–๊ณ  ์žˆ๋Š” ์ƒ์ž์ž…๋‹ˆ๋‹ค. ์ผ์ข…์˜ ์ž‘์€ ๋จธ์‹ ์ด์ฃ ! ์นœ๊ตฌ์—๊ฒŒ ํ–‰์šด์˜ ํŽธ์ง€๋ฅผ ๋ณด๋‚ด์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ด ๋ด…์‹œ๋‹ค. ๋‹จ, ๋ถ™์—ฌ๋„ฃ๊ธฐ๋Š” ์•ˆ๋˜๊ณ , ํŽธ์ง€์˜ ์‹œ์ž‘๊ณผ ๋์— ์นœ๊ตฌ์˜ ์ด๋ฆ„์„ ์ ์–ด์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํŽธ์ง€ ๋‚ด์šฉ์„ ์ž‘์„ฑํ•˜์—ฌ console.log๋กœ ์ฐ์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

// ์ฒซ๋ฒˆ์งธ ํŽธ์ง€ : ์ฒ ์ˆ˜
console.log('์ฒ ์ˆ˜์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ์ฒ ์ˆ˜์—๊ฒŒ')
// ๋‘๋ฒˆ์งธ ํŽธ์ง€ : ์˜ํฌ
console.log('์˜ํฌ์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ์˜ํฌ์—๊ฒŒ')
// ์„ธ๋ฒˆ์งธ ํŽธ์ง€ : ์œค์šฐ
console.log('์œค์šฐ์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ์œค์šฐ์—๊ฒŒ')
// ๋„ค๋ฒˆ์งธ ํŽธ์ง€ : ํƒœํฌ
console.log('ํƒœํฌ์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ํƒœํฌ์—๊ฒŒ')
// ๋‹ค์„ฏ๋ฒˆ์งธ ํŽธ์ง€ : ์œ ๋ฆฌ
console.log('์œ ๋ฆฌ์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ์œ ๋ฆฌ์—๊ฒŒ')
// ์—ฌ์„ฏ๋ฒˆ์งธ ํŽธ์ง€ : ์ฐฝํฌ
console.log('์ฐฝํฌ์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ์ฐฝํฌ์—๊ฒŒ')
// ์ผ๊ณฑ๋ฒˆ์งธ ํŽธ์ง€ : ํ˜์ˆ˜
console.log('ํ˜์ˆ˜์•ผ,,์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ํ˜์ˆ˜์—๊ฒŒ')

7๊ฐœ์˜ ํŽธ์ง€๋ฅผ ๋ณด๋ƒˆ์„ ๋ฟ์ธ๋ฐ,, ์—„์ฒญ ๊ธด ์ฝ”๋“œ๊ฐ€ ์ƒ๊ฒจ๋ฒ„๋ ธ์Šต๋‹ˆ๋‹ค. ์นœ๊ตฌ์˜ ์ด๋ฆ„์ด ๋“ค์–ด๊ฐ€๋Š” ๋ถ€๋ถ„์„ ๋ณ€์ˆ˜๋กœ ๋ฐ”๊พผ๋‹คํ•ด๋„ ๊ทธ ์ž๋ฆฌ๋Š” ๋ณ€์ˆ˜๋ช…์ด ์ฐจ์ง€ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋“œ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ค„์ด๋Š”๋ฐ ๋„์›€์ด ๋˜์ง€ ์•Š๊ฒ ์ฃ . ์ด์ฒ˜๋Ÿผ ์ค‘๋ณต๋˜๋Š”๊ฒŒ ๋งŽ์„ ๋•Œ๋Š” ์ฒซ๋ฒˆ์งธ ํ•จ์ˆ˜๋ฅผ ๋– ์˜ฌ๋ ค์•ผํ•ฉ๋‹ˆ๋‹ค. ํ•จ์ˆ˜๋Š” ์ค‘๋ณต๋˜๋Š” ๋ถ€๋ถ„์„ ํšจ๊ณผ์ ์œผ๋กœ ์ค„์—ฌ์ฃผ๊ณ , ์–ด๋””์„œ๋“  ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 'sendToLetter'๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ์œ„์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋„๋ก ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

function sendToLetter(name){
  let text = name+'์•ผ,, ์ด ํŽธ์ง€๋Š” ์˜๊ตญ์—์„œ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜์–ด ์ผ๋…„์— ํ•œ ๋ฐ”ํ€ด ๋Œ๋ฉด์„œ ๋ฐ›๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํ–‰์šด์„ ์ฃผ์—ˆ์–ด. ์ง€๊ธˆ์€ ๋„ˆ์—๊ฒŒ๋กœ ๋ณด๋‚ด์ง„ ์ด ํŽธ์ง€๋Š” 4์ผ ์•ˆ์— ๋„ˆ์˜ ๊ณ์„
  ๋– ๋‚˜์•ผ ํ•ด. ์ด ํŽธ์ง€๋ฅผ ํฌํ•จํ•ด์„œ 7ํ†ต์„ ํ–‰์šด์ด ํ•„์š”ํ•œ ์‚ฌ๋žŒ์—๊ฒŒ ๋ณด๋‚ด ์ค˜์•ผํ•ด. ๋ณต์‚ฌ๋ฅผ ํ•˜๋ฉด ์ ˆ๋Œ€ ์•ˆ๋˜. ํ˜น ๋ฏธ์‹ ์ด๋ผ ํ•˜์‹ค์ง€ ๋ชจ๋ฅด์ง€๋งŒ ์ •๋ง ์‚ฌ์‹ค์ด์•ผ. ์ด ํŽธ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด 7๋…„์˜ ํ–‰์šด์ด
  ์žˆ์„ ๊ฒƒ์ด๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด 3๋…„์˜ ๋ถˆํ–‰์ด ์žˆ์„ ๊ฑฐ์•ผ. ๊ทธ๋ฆฌ๊ณ  ์ด ํŽธ์ง€๋ฅผ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๋‚™์„œ๋ฅผ ํ•ด์„œ๋Š” ํฐ์ผ๋‚˜. 7๋…„์˜ ํ–‰์šด์„ ๋นŒ๋ฉด์„œ.. ' + name + '์—๊ฒŒ';
  console.log(text)
};
sendToLetter('์ฒ ์ˆ˜')
sendToLetter('์˜ํฌ')
sendToLetter('์œค์šฐ')
sendToLetter('ํƒœํฌ')
sendToLetter('์œ ๋ฆฌ')
sendToLetter('์ฐฝํฌ')
sendToLetter('ํ˜์ˆ˜')

โœ”๏ธ ์ฆ‰, ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์ฒซ๋ฒˆ์งธ ์žฌ์‚ฌ์šฉ์„ฑ์ž…๋‹ˆ๋‹ค. ์ •์˜ํ•œ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœ๋งŒ ํ•จ์œผ๋กœ์จ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ ๋‘๋ฒˆ์งธ๋Š” ๊ฐ€๋…์„ฑ์ž…๋‹ˆ๋‹ค. name๊ฐ’์„ ๋ฐ›์•„ ๋งจ ์•ž ๋ถ€๋ถ„๊ณผ ๋งจ ๋’ท๋ถ€๋ถ„์— ํ•ฉ์ณ์ฃผ๋Š” ๊ตฌ์กฐ๋ฅผ ํ•œ ๋ˆˆ์— ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ 'sendToLetter'๋ผ๋Š” ํ•จ์ˆ˜๋ช…์„ ํ†ตํ•ด ํ•จ์ˆ˜์˜ ๋Œ€๋žต์ ์ธ ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์•Œ์•„์ฑ„๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.
โœ”๏ธ ์„ธ๋ฒˆ์งธ๋Š” ๋ชจ๋“ˆํ™”์ž…๋‹ˆ๋‹ค. ์ฝ”๋“œ์˜ ๊ทœ๋ชจ๊ฐ€ ์ปค์งˆ ์ˆ˜๋ก ์ง€๊ธˆ ์ž‘๋™ํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ์–ด๋””์„œ๋ถ€ํ„ฐ ์–ด๋””๊นŒ์ง€ ์ž‘๋™ํ•˜๊ณ , ์˜ํ–ฅ์„ ์ฃผ๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ํ•จ์ˆ˜์˜ ๊ธฐ๋Šฅ๋ณ„๋กœ ๋…๋ฆฝ๋œ ์˜์—ญ์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋กœ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๊ณ  ์œ ์ง€๋ณด์ˆ˜๋‚˜ ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒ ์‹œ ์–ด๋””์„œ ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค.


๐Ÿค” ํ•จ์ˆ˜๋Š” ์–ด๋–ป๊ฒŒ ์ƒ๊ฒผ์„๊นŒ?

ํ•จ์ˆ˜๋Š” ๊ธฐ๋ณธ ๊ตฌ์กฐ๋Š” ํ•จ์ˆ˜๋ช…, ์ธ์ž, ์ฒ˜๋ฆฌ ์ ˆ์ฐจ๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค. ๋˜๋Š” ํ•จ์ˆ˜ ์‚ฌ์šฉ๊ณผ ๊ด€๋ จํ•ด์„œ ํ•จ์ˆ˜ ์„ ์–ธ, ํ•จ์ˆ˜ ํ˜ธ์ถœ๋กœ ๋‚˜๋‰˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.

  • ํ•จ์ˆ˜๋ช…์€ ๋ง ๊ทธ๋Œ€๋กœ ํ•จ์ˆ˜์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์ด ์ด๋ฆ„์œผ๋กœ ํ•จ์ˆ˜๋ฅผ ์–ด๋””์„œ๋“  ํ˜ธ์ถœํ•˜์—ฌ ์ž‘๋™์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ๊ทธ๋ฆผ์—์„œ๋Š” 'addNumbers'๊ฐ€ ํ•จ์ˆ˜๋ช…์ž…๋‹ˆ๋‹ค.
  • ์ธ์ž(parameter)๋Š” ํ•จ์ˆ˜ ๋‚ด์— ๋ฌด์–ธ๊ฐ€ ์ฃผ์ž…์‹œํ‚ฌ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํ†ต๋กœ์ž…๋‹ˆ๋‹ค. ์ธ์ž๊ฐ€ ์—†์„ ๋•Œ๋„ ์žˆ์ง€๋งŒ, ์—ฌ๋Ÿฌ๊ฐœ ์žˆ์„ ๋•Œ๋„ ์žˆ๊ณ , ํ™•์ •๋œ ์ธ์ž์˜ ๊ฐฏ์ˆ˜๊ฐ€ ์—†์„ ๋•Œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ๊ทธ๋ฆผ์—์„œ๋Š” ํ•จ์ˆ˜๋ช… ์˜†์— () ๋ถ€๋ถ„์ด ์ธ์ž๋ฅผ ๋ฐ›๋Š” ํ•จ์ˆ˜์˜ ์ž…๊ตฌ์ž…๋‹ˆ๋‹ค.
  • ์ž…๊ตฌ ์•ˆ์—๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ ํ†ต๋กœ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋Š”๋ฐ, ์ธ์ž๋“ค์ด ๊ธธ์„ ํ—ค๋ฉ”์ง€ ์•Š๋„๋ก ํ†ต๋กœ์˜ ์ด๋ฆ„์„ ์ •ํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž…๊ตฌ ์•ˆ์— ์ด๋ฆ„์ด ๋‹ฌ๋ฆฐ ํ†ต๋กœ๊ฐ€ ์žˆ๋‹ค๋ฉด ์ธ์ž๊ฐ€ ์žˆ๋Š” ๊ฒƒ ์ž…๋‹ˆ๋‹ค.
  • ์ฒ˜๋ฆฌ(code)๋Š” ์ด ํ•จ์ˆ˜์˜ ๋ณธ์งˆ์ ์ธ ๊ธฐ๋Šฅ์„ ๋‹ด๋‹นํ•˜๋Š” ๋กœ์ง์ž…๋‹ˆ๋‹ค. {}์•ˆ์— ์ •ํ•ด์ง„ ๊ธฐ๋Šฅ์— ๋”ฐ๋ผ ํ•จ์ˆ˜๋Š” ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ 'addNumbers" ํ•จ์ˆ˜์—์„œ๋Š” a,b๋ฅผ ์ธ์ž๋กœ ์ „๋‹ฌ๋ฐ›์•„ ๊ทธ ๋‘˜์„ ๋”ํ•˜๋Š” ๊ธฐ๋Šฅ์„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์œ„์˜ ์„ธ๊ฐ€์ง€ ๊ตฌ์กฐ๋กœ ํ•จ์ˆ˜๋Š” ์ •์˜๋˜๊ณ , ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ํ•„์š”ํ•œ ๊ณณ์— ํ•จ์ˆ˜๋ช…์„ ํ˜ธ์ถœํ•จ์œผ๋กœ์จ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ดํฐ์—์„œ ์‹œ๋ฆฌ์•„๋ฅผ ๋ถ€๋ฅด๋ฉด ์‹œ๋ฆฌ์•„๊ฐ€ ๋Œ€๋‹ตํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ํ•จ์ˆ˜๋ช…์— parameter๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋Š” ์ž…๊ตฌ๋ฅผ ๋‹ฌ์•„์ฃผ๋ฉด ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋งŒ์ผ ํ•จ์ˆ˜๊ฐ€ ์ •์˜๋œ ๋ถ€๋ถ„์— ์ธ์ž๊ฐ€ ์žˆ๋‹ค๋ฉด, ์ธ์ž๊ฐ’์„ ์ž…๋ ฅํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿค” ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ๊ณผ ํ•จ์ˆ˜ ํ‘œํ˜„์‹

ํ•จ์ˆ˜์„ ์–ธ๋ฌธ์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ๊นŒ์ง€ ์ผ๋ฐ˜์ ์œผ๋กœ ์„ ์–ธํ–ˆ๋˜ ํ•จ์ˆ˜๊ฐ€ ํ•จ์ˆ˜์„ ์–ธ๋ฌธ ๋ฐฉ์‹์„ ๋”ฐ๋ฅธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•จ์ˆ˜ ์„ ์–ธ๋ฌธ์€ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ํ˜•ํƒœ์ง€๋งŒ, ํ•จ์ˆ˜๊ฐ€ ์„ ์–ธ๋˜์ง€ ์ „์—๋„ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ํŠน์ด์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ์‹คํ–‰์‹œํ‚ค๋ฉด, ์ฝ”๋“œ๋Š” ์œ„์—์„œ๋ถ€ํ„ฐ ์•„๋ž˜๋กœ ์ฝํ˜€์ ธ ๋‚ด๋ ค๊ฐ€๊ธฐ ๋•Œ๋ฌธ์— ์•„์ง ์„ ์–ธ๋˜์ง€ ์•Š์€ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•ด์•ผ ํ•˜๋Š”๋ฐ ๊ทธ๋ ‡์ง€ ์•Š๊ณ  ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์•„๋งˆ.. ํ•จ์ˆ˜๋ฅผ ๋ณ„๋„๋กœ ๋ณด๊ด€ํ•ด์„œ ์„ ์–ธ ์œ„์น˜์™€ ๊ด€๋ จ์—†์ด ํ˜ธ์ถœ๋˜๋ฉด ๋ฐ”๋กœ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

sayHello()
function sayHello(){
  console.log("์•ˆ๋…•ํ•˜์„ธ์š”! ๋งŒ๋‚˜์„œ ๋ฐ˜๊ฐ‘์Šต๋‹ˆ๋‹ค")
}
sayHello()

ํ•จ์ˆ˜ํ‘œํ˜„์‹์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ํ•จ์ˆ˜๋ช…์„ ๊บผ๋‚ด์„œ ๋ณ€์ˆ˜์— ๋‹ด๊ณ , ๋ณ€์ˆ˜๋ช…์„ ํ˜ธ์ถœํ•˜์—ฌ ํ•จ์ˆ˜๋ฅผ ์ž‘๋™์‹œํ‚ค๋Š” ์„ ์–ธ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ๋‹จ, ํ•จ์ˆ˜ํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ–ˆ์„ ๋•Œ๋Š” ์„ ์–ธ ๋’ค ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜์ง€ ์•Š์œผ๋ฉด 'ReferenceError'๋ฅผ ๋งŒ๋‚˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

// sayHello() ReferenceError : Cannot access 'sayHello' before initialization
let sayHello = function(name){
  console.log("์•ˆ๋…•ํ•˜์„ธ์š”! ๋งŒ๋‚˜์„œ ๋ฐ˜๊ฐ‘์Šต๋‹ˆ๋‹ค")
}
sayHello()


2. Return : ๊ฐ’๋งŒ ์ฐ๋Š” ํ•จ์ˆ˜์™€ ๊ฐ’์„ ๋‹ด๋Š” ํ•จ์ˆ˜

๐Ÿค” ๋‚ด ํ•จ์ˆ˜๊ฐ€ ๊นกํ†ต์ด๋ผ๊ณ ?

ํ•จ์ˆ˜์— return์„ ๋งค์šฐ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. return์˜ ๊ธฐ๋Šฅ์„ ์•Œ์•„๋ด…์‹œ๋‹ค. return์€ 2๊ฐ€์ง€ ๋Œ€ํ‘œ์ ์ธ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์„ ๊ฐ–๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ค‘ ํ•˜๋‚˜๋Š” ๊ฒฐ๊ณผ๊ฐ’ ์ „๋‹ฌ์ด๋ผ๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
๊ฒฐ๊ณผ๊ฐ’์„ ์ „๋‹ฌํ•œ๋‹ค๋Š” ๋ง์€ ์ฒ˜์Œ ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ํ•จ์ˆ˜ ๋‚ด์—์„œ console.log()๋กœ ๊ฐ’์„ ์ถœ๋ ฅํ•ด๋„ ๋งˆ์น˜ ๊ทธ ํ•จ์ˆ˜๊ฐ€ ๊ฐ’์„ ๊ฐ–๊ณ  ์žˆ๋‹ค๊ณ  ์ฐฉ๊ฐํ•˜๊ธฐ ์‰ฝ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. 'moneyCopyMechine' ํ•จ์ˆ˜๋Š” ๋ˆ์„ 10๋ฐฐ๋กœ ๋ณต์‚ฌํ•˜๋Š” ๋จธ์‹ ์ž…๋‹ˆ๋‹ค. ์ธ์ž๋กœ ๋„ฃ์–ด์ค€ ๊ธˆ์•ก์„ 10๋ฐฐ๋กœ ๋ถˆ๋ ค์ฃผ์ฃ . ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰์‹œํ‚ค๋ฉด ์ฝ˜์†”์— ๋งŒ์›์ด 10๋ฐฐ๊ฐ€๋˜์–ด 100000์ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๊ฐ’์€ ํ•จ์ˆ˜ ๋‚ด์—์„œ console.log๊ฐ€ ์ž‘๋™ํ•œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ํ˜ธ์ถœ๋œ ํ•จ์ˆ˜์˜ ๊ฐ’์„ ํ™•์ธํ•ด๋ณด๊ธฐ ์œ„ํ•ด myMoney์— ๋‹ด์•„ ๋งจ ์•„๋ž˜์—์„œ ์ถœ๋ ฅํ•˜์˜€๋”๋‹ˆ undefined๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
console.log๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์ค‘ ๊ฐ’์„ ์ž˜ ๋ฐ›์•„์™”๋Š”์ง€, ์˜๋„๋Œ€๋กœ ์ฒ˜๋ฆฌ๋˜๊ณ  ์žˆ๋Š”์ง€ ์ค‘๊ฐ„์— ์ ๊ฒ€ํ•˜๊ธฐ ์œ„ํ•ด ์ •๋ง ์ค‘์š”ํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ถœ๋ ฅ๋˜์—ˆ๋‹ค๊ณ ํ•ด์„œ ๊ทธ ํ•จ์ˆ˜๊ฐ€ ๊ฐ’์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ์˜คํ•ดํ•ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ 'moneyCopyMechine'๋Š” ๋งˆ์น˜ ๊นกํ†ตํ•จ์ˆ˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฒ˜๋ฆฌํ•˜๋Š” ๋กœ์ง์€ ์กด์žฌํ•˜์ง€๋งŒ ๊ฒฐ๊ตญ ๋‚จ๋Š”๊ฒŒ ์—†์Šต๋‹ˆ๋‹ค. ์•„๋ฌด ๊ฐ’๋„ ๊ฐ–๊ณ  ์žˆ์ง€ ์•Š๊ธฐ ๋–„๋ฌธ์— ์ „์žฌ์‚ฐ์„ ๋‚ ๋ฆฐ ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

function moneyCopyMechine(money){
  money = money * 10
  console.log(money) // ๐Ÿ‘ˆ ์ฝ˜์†”์— 100000์€ ์—ฌ๊ธฐ์„œ ์ถœ๋ ฅ๋œ ๊ฒฐ๊ณผ์ผ ๋ฟ์ด์—์š”:)
}
let myMoney = moneyCopyMechine(10000)
console.log(myMoney) // ๐Ÿ‘ˆ undefined

๐Ÿค” ๊ทธ๋ž˜์„œ,, return ์ด ๋ญ”๋ฐ?

return์€ ํ•จ์ˆ˜์˜ ๊ฒฐ๊ณผ๊ฐ’์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ์–ด๋””์— ์ „๋‹ฌํ• ๊นŒ์š”? ํ˜ธ์ถœํ•œ ํ•จ์ˆ˜๊ฐ€ ๊นกํ†ต์ด ์•„๋‹Œ, ๊ฒฐ๊ณผ๋ฌผ์„ ๋‹ด๊ณ  ์žˆ๋„๋ก ํ˜ธ์ถœํ•œ ๊ณณ์— ๊ฐ’์„ ์ „๋‹ฌ์‹œํ‚ต๋‹ˆ๋‹ค. console.log๊ฐ€ ์•„๋‹Œ return์œผ๋กœ money๋ฅผ ์ „๋‹ฌํ–ˆ๋”๋‹ˆ ํ˜ธ์ถœํ•œ ํ•จ์ˆ˜๋ฅผ ๋‹ด์€ 'myMoney'์—์„œ 100000์„ ๊ฐ–๊ณ  ์žˆ๋Š” ๊ฒƒ์„ ์•„๋ž˜์ฒ˜๋Ÿผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

function moneyCopyMechine(money){
  money = money * 10
  return money
}
let myMoney = moneyCopyMechine(10000)
console.log(myMoney) // ๐Ÿ‘ˆ 100000

๐Ÿค” ํ•จ์ˆ˜์—์„œ return์„ ๋งŒ๋‚˜๋ฉด!

return์„ ๋งŒ๋‚˜๋ฉด ํ•จ์ˆ˜๋ฅผ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์ฆ๋ช…ํ•˜๊ธฐ ์œ„ํ•ด ์ฒซ๋ฒˆ์งธ return ๋’ค์— ์ถœ๋ ฅ๋ฌธ 2๊ฐœ์™€ ๊ทธ ์‚ฌ์ด์— return์„ ๋‘๊ณ  ์‹คํ–‰ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ๋Š” 100000์ด ์ถœ๋ ฅ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด์ฒ˜๋Ÿผ ํ•จ์ˆ˜ ๋‚ด์—์„œ return์„ ๋งŒ๋‚˜๋ฉด ํ•จ์ˆ˜์˜ ์ž‘๋™์€ ๊ทธ ์œ„์น˜์—์„œ ๋ฉˆ์ถ”๊ณ , ๊ฐ’์„ ๋ฐ˜์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ฒซ๋ฒˆ์งธ๋กœ ๋งŒ๋‚˜๋Š” return์—์„œ ์ข…๋ฃŒ๋˜๊ธฐ ์ดํ›„์— ์ฝ”๋“œ๋Š” ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

function moneyCopyMechine(money){
  money = money * 10
  return money
  console.log('1. ์ด๊ณณ์ด ์ถœ๋ ฅ๋œ๋‹ค๋ฉด,, ์ฒซ๋ฒˆ์งธ return ํ›„ ํ•จ์ˆ˜๊ฐ€ ์ž‘๋™ํ•œ๊ฑฐ์—์š”.') // ๐Ÿ‘ˆ ์ž‘๋™๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  return money / 2 // ๐Ÿ‘ˆ ์ž‘๋™๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  console.log('2. ์ด๊ณณ์ด ์ถœ๋ ฅ๋œ๋‹ค๋ฉด,, ๋‘๋ฒˆ์งธ return ํ›„์—๋„ ํ•จ์ˆ˜๊ฐ€ ์ž‘๋™ํ•œ๊ฑฐ์—์š”.') // ๐Ÿ‘ˆ ์ž‘๋™๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
}
let myMoney = moneyCopyMechine(10000)
console.log(myMoney)  // ๐Ÿ‘ˆ 100000


3. Parameter : ๊น€๋ฐฅ ๋จธ์‹ ๊ณผ ์†์žฌ๋ฃŒ


๐Ÿค” parameter1. ๊น€๋ฐฅ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด๋ณด์Ÿˆ!

์œ„์—์„œ ์ •๋ฆฌํ•œ๊ฒƒ ์ฒ˜๋Ÿผ ์ธ์ž(parameter)๋Š” ํ•จ์ˆ˜๋กœ ์ „๋‹ฌ๋˜๋Š” ๊ฐ’์ž…๋‹ˆ๋‹ค. ์ „๋‹ฌํ•  ๊ฐ’์€ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ, ํ•จ์ˆ˜์˜ ์ž…๊ตฌ์ธ () ์•ˆ์— ๋ฐฐ์น˜์‹œ์ผœ, ํ•จ์ˆ˜์™€ ๋‚ด์—์„œ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ๊น€๋ฐฅ์„ ๋งŒ๋“œ๋Š” ๋จธ์‹ ์ž…๋‹ˆ๋‹ค. ์ฐธ์น˜๋ฅผ ๋„ฃ์œผ๋ฉด ์ฐธ์น˜๊น€๋ฐฅ, ์น˜์ฆˆ๋ฅผ ๋„ฃ์œผ๋ฉด ์น˜์ฆˆ๊น€๋ฐฅ, ์ŠคํŒธ์„ ๋„ฃ์œผ๋ฉด ์ŠคํŒธ ๊น€๋ฐฅ์ž…๋‹ˆ๋‹ค.

function makeKimbab(ingredient){
  console.log('๊น€๋ฐฅ ๊น€์„ ํ•˜๋‚˜ ๊บผ๋ƒ…๋‹ˆ๋‹ค.')
  console.log('๊ณ ์Šฌ๊ณ ์Šฌํ•œ ๋ฐฅ์„ ๊น€ ์œ„์— ์˜ฌ๋ ค ํ…๋‹ˆ๋‹ค.')
  console.log(ingredient+',', '๋‹จ๋ฌด์ง€,', '๋ง›์‚ด,','์‹œ๊ธˆ์น˜๋ฅผ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค.')
  console.log('๊น€๋ฐฅ์„ ๊ท ์ผํ•˜๊ฒŒ ์ฐ์–ด ํฌ์žฅํ•ฉ๋‹ˆ๋‹ค.')
  let kimbab = ingredient + 'Kimbap';
  return kimbab
}
// order1
let order1 = makeKimbab('Tuna')
console.log(order1+'์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.') // TunaKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order2
let order2 = makeKimbab('Cheese')
console.log(order2+'์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.') // CheeseKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order3
let order3 = makeKimbab('Spam')
console.log(order3+'์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.') // SpamKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿค” parameter2. ๋ˆ„๊ฐ€ ์‹œํ‚จ๊ฑด๋ฐ??

๋•Œ๋กœ๋Š” parameter๋ฅผ ์—ฌ๋Ÿฌ๊ฐœ ๋ฐ›์•„ ํ•จ์ˆ˜ ๊ธฐ๋Šฅ ๋‚ด์—์„œ ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฒ˜๋ฆฌํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ„์—์„œ ์ฒ˜๋Ÿผ 3๊ฐœ์˜ ์ฃผ๋ฌธ์ด์•„๋‹ˆ๋ผ ์ฃผ๋ฌธ์ด 5๊ฐœ๊ฐ€ ๋“ค์–ด์™”๋Š”๋ฐ, ์ค‘๋ณต๋˜๋Š” ๊น€๋ฐฅ์ด ์žˆ์œผ๋ฉด ๋ˆ„๊ตฌ์˜ ๊น€๋ฐฅ์ธ์ง€ ํŒŒ์•…ํ•˜๊ธฐ ์–ด๋ ต๊ฒ ์ฃ . ์ด๋Ÿด ๋•Œ parameter๋ฅผ ํ•œ๊ฐœ ๋” ๋ฐ›์•„ ๋ˆ„๊ตฐ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด์ฒ˜๋Ÿผ parameter๋Š” ํ•„์š”์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ๊ฐœ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•ด๋ณผ๊ป˜์š”:)

function makeKimbab(who, ingredient){
  console.log('๊น€๋ฐฅ ๊น€์„ ํ•˜๋‚˜ ๊บผ๋ƒ…๋‹ˆ๋‹ค.')
  console.log('๊ณ ์Šฌ๊ณ ์Šฌํ•œ ๋ฐฅ์„ ๊น€ ์œ„์— ์˜ฌ๋ ค ํ…๋‹ˆ๋‹ค.')
  console.log(ingredient+',', '๋‹จ๋ฌด์ง€,', '๋ง›์‚ด,','์‹œ๊ธˆ์น˜๋ฅผ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค.')
  console.log('๊น€๋ฐฅ์„ ๊ท ์ผํ•˜๊ฒŒ ์ฐ์–ด ํฌ์žฅํ•ฉ๋‹ˆ๋‹ค.')
  let kimbab = who + '๋‹˜์ด ์ฃผ๋ฌธํ•œ ' + ingredient + 'Kimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.';
  return kimbab
}
// order1
let order1 = makeKimbab('์žฌ์›', 'Tuna')
console.log(order1) // ์žฌ์›๋‹˜์ด ์ฃผ๋ฌธํ•œ TunaKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order2
let order2 = makeKimbab('ํ˜œ์ง„', 'Cheese')
console.log(order2) // ํ˜œ์ง„๋‹˜์ด ์ฃผ๋ฌธํ•œ CheeseKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order3
let order3 = makeKimbab('๋ณด๋žŒ', 'Cheese')
console.log(order3) // ๋ณด๋žŒ๋‹˜์ด ์ฃผ๋ฌธํ•œ CheeseKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order4
let order4 = makeKimbab('๋ฏผ์ค€', 'Spam')
console.log(order4) // ๋ฏผ์ค€๋‹˜์ด ์ฃผ๋ฌธํ•œ SpamKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿค” parameter3. ๊ธฐ๋ณธ ๊น€๋ฐฅ๋„ ํ•„์š”ํ•  ๋•Œ!

์„ ์–ธํ•œ ํ•จ์ˆ˜์— parameter๊ฐ€ ์žˆ๋Š”๋ฐ ๋ถˆ๊ตฌํ•˜๊ณ , ํ•จ์ˆ˜ ํ˜ธ์ถœ ๋ถ€๋ถ„์—์„œ parameter๋ฅผ ์ „๋‹ฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์ผ ํ•จ์ˆ˜์— parameter๊ฐ€ ์ „๋‹ฌ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ๋ฏธ๋ฆฌ ์ •ํ•ด๋‘” default๊ฐ’์ด parameter๋กœ ์ž‘๋™๋  ์ˆ˜ ์žˆ๊ฒŒํ•˜๋ฉด ์–ด๋–จ๊นŒ์š”? parameter์˜ default๋กœ 'basic'์„ ์ง€์ •ํ•ด๋‘๊ฒ ์Šต๋‹ˆ๋‹ค.

function makeKimbab(who, ingredient='Basic'){
  console.log('๊น€๋ฐฅ ๊น€์„ ํ•˜๋‚˜ ๊บผ๋ƒ…๋‹ˆ๋‹ค.')
  console.log('๊ณ ์Šฌ๊ณ ์Šฌํ•œ ๋ฐฅ์„ ๊น€ ์œ„์— ์˜ฌ๋ ค ํ…๋‹ˆ๋‹ค.')
  console.log(ingredient+',', '๋‹จ๋ฌด์ง€,', '๋ง›์‚ด,','์‹œ๊ธˆ์น˜๋ฅผ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค.')
  console.log('๊น€๋ฐฅ์„ ๊ท ์ผํ•˜๊ฒŒ ์ฐ์–ด ํฌ์žฅํ•ฉ๋‹ˆ๋‹ค.')
  let kimbab = who + '๋‹˜์ด ์ฃผ๋ฌธํ•œ ' + ingredient + 'Kimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.';
  return kimbab
}
// order1
let order1 = makeKimbab('์žฌ์›')
console.log(order1) // ์žฌ์›๋‹˜์ด ์ฃผ๋ฌธํ•œ BasicKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order2
let order2 = makeKimbab('ํ˜œ์ง„', 'Tuna')
console.log(order2) // ํ˜œ์ง„๋‹˜์ด ์ฃผ๋ฌธํ•œ CheeseKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order3
let order3 = makeKimbab('๋ณด๋žŒ', 'Cheese')
console.log(order3) // ๋ณด๋žŒ๋‹˜์ด ์ฃผ๋ฌธํ•œ CheeseKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order4
let order4 = makeKimbab('๋ฏผ์ค€')
console.log(order4) // ๋ฏผ์ค€๋‹˜์ด ์ฃผ๋ฌธํ•œ BasicKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿค” parameter4. ๋‚ด๋ง˜๋Œ€๋กœ ๊น€๋ฐฅ!

parameter๋กœ 2๊ฐœ๊ฐ€ ์ „๋‹ฌ๋ ์ˆ˜ ์žˆ๊ณ , 3๊ฐœ๊ฐ€ ์ „๋‹ฌ๋  ์ˆ˜๋„ ์žˆ๊ณ , 10๊ฐœ๊ฐ€ ์ „๋‹ฌ๋  ์ˆ˜๋„ ์žˆ๊ฒŒ ํ•˜๊ณ  ์‹ถ์–ด์š”. ๋งˆ์น˜ ์›ํ•˜๋Š” ์†์žฌ๋ฃŒ๋ฅผ ๋‹ค ๋„ฃ์–ด ๋‚˜๋งŒ์˜ ๊น€๋ฐฅ์„ ๋งŒ๋“œ๋Š”๊ฒƒ ์ฒ˜๋Ÿผ์š”! ๊ทธ๋Ÿด๋• ...์„ parameter์— ๋ถ™์ž…๋‹ˆ๋‹ค. ๋งˆ์น˜ python์—์„œ *args๋กœ ์—ฌ๋Ÿฌ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋‹ค ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ์ฒ˜๋Ÿผ ๋ง์ด์ฃ .

function makeKimbab(who, ...ingredient){
  console.log('๊น€๋ฐฅ ๊น€์„ ํ•˜๋‚˜ ๊บผ๋ƒ…๋‹ˆ๋‹ค.')
  console.log('๊ณ ์Šฌ๊ณ ์Šฌํ•œ ๋ฐฅ์„ ๊น€ ์œ„์— ์˜ฌ๋ ค ํ…๋‹ˆ๋‹ค.')
  console.log(ingredient+',', '๋‹จ๋ฌด์ง€,', '๋ง›์‚ด,','์‹œ๊ธˆ์น˜๋ฅผ ์˜ฌ๋ฆฝ๋‹ˆ๋‹ค.')
  console.log('๊น€๋ฐฅ์„ ๊ท ์ผํ•˜๊ฒŒ ์ฐ์–ด ํฌ์žฅํ•ฉ๋‹ˆ๋‹ค.')
  let kimbab = who + '๋‹˜์ด ์ฃผ๋ฌธํ•œ ' + ingredient + 'Kimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.';
  return kimbab
}
// order1
let order1 = makeKimbab('์žฌ์›')
console.log(order1) // ์žฌ์›๋‹˜์ด ์ฃผ๋ฌธํ•œ BasicKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order2
let order2 = makeKimbab('ํ˜œ์ง„', 'Tuna', 'Kimchi', 'Spam', 'Cheese')
console.log(order2) // ํ˜œ์ง„๋‹˜์ด ์ฃผ๋ฌธํ•œ Tuna,Kimchi,Spam,CheeseKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
// order3
let order3 = makeKimbab('๋ณด๋žŒ', 'Pig', 'Kimchi', 'Anchovy')
console.log(order3) // ๋ณด๋žŒ๋‹˜์ด ์ฃผ๋ฌธํ•œ Pig,Kimchi,AnchovyKimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.


4. Copy Function : ๊น€๋ฐฅ ๋จธ์‹ ์„ ๋ณต์‚ฌํ•˜๋Š” ๋ฒ•๊ณผ ๊น€๋ฐฅ์„ ๋ณต์‚ฌํ•˜๋Š” ๋ฒ•


๐Ÿค” ํ•จ์ˆ˜ ๋ณต์‚ฌํ•  ๋•Œ ์ฃผ์˜ํ•  ์ .

ํ•จ์ˆ˜์˜ ๋ณต์‚ฌ๋Š” ์•„๋ž˜์ฒ˜๋Ÿผ ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜์— ๋„ฃ์–ด์ฃผ๋ฉด ๋˜ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๊ฐ™์€ ๊ธฐ๋Šฅ์˜ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์š”. ์ฃผ์˜ํ•  ์ ์€ ()๋ฅผ ๋ถ™์ด๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค. ()๋ฅผ ๋ถ™์ธ๋‹ค๋Š”๊ฑด ํ•จ์ˆ˜์˜ ํ˜ธ์ถœํ•œ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ํ˜ธ์ถœ๋œ ๊ฒฐ๊ณผ๊ฐ’์ด ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜์— ๋‹ด๊ธฐ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

// ํ•จ์ˆ˜ ๋ณต์‚ฌ
function makeKimbab(who, ingredient){
  let kimbab = `${who}๋‹˜์ด ์ฃผ๋ฌธํ•œ ${ingredient} Kimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.`
  return kimbab
}
makeKimbab2 = makeKimbab
console.log(makeKimbab2('์žฌ์›', 'Tuna'))
console.log(makeKimbab('ํ˜œ์ง„', 'Spam'))

ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•œ ๊ฒฐ๊ณผ๋ฅผ ํ•จ์ˆ˜์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋ฉด, ์•„๋ž˜์ฒ˜๋Ÿผ TypeError์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

// ํ•จ์ˆ˜๊ฒฐ๊ณผ ๋ณต์‚ฌ
function makeKimbab(who, ingredient){
  let kimbab = `${who}๋‹˜์ด ์ฃผ๋ฌธํ•œ ${ingredient} Kimbap์ด ์™„์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.`
  return kimbab
}
makeKimbab2 = makeKimbab()
console.log(makeKimbab2('์žฌ์›', 'Tuna')) // TypeError: makeKimbab2 is not a function

์ฆ‰, ํ•จ์ˆ˜๋ฅผ ๋ณต์‚ฌํ•œ๋‹ค๋Š” ์˜๋ฏธ๋Š” ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๋‹ค๋ฅธ ํ•จ์ˆ˜๋กœ ์ด์šฉํ•˜๊ณ  ์‹ถ์„ ๋•Œ, ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์น˜ ๊น€๋ฐฅ ๋จธ์‹ ์„ ํ•˜๋‚˜ ๋” ๋งŒ๋“œ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด์™€ ๋ฐ˜๋Œ€๋กœ ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋˜์–ด ๋ฐ˜ํ™˜ํ•œ ๊ฒฐ๊ณผ๋Š” ํ•จ์ˆ˜์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์„ ๋ฟ๋งŒ์•„๋‹ˆ๋ผ, ๊ฐ’์„ ๊ฐ–๊ณ  ์žˆ๋Š” ๋ณ€์ˆ˜์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.



5. Arrow Function


๐Ÿค” Arrow Function ์‚ฌ์šฉ๋ฒ•

ํ™”์‚ดํ‘œ ํ•จ์ˆ˜(Arrow Function)๋Š” ES6์— ์ถ”๊ฐ€๋œ ๋ฌธ๋ฒ•์œผ๋กœ ํ•จ์ˆ˜ ํ‘œํ˜„์‹์„ ๋”์šฑ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค. ํ™”์‚ดํ‘œ ํ•จ์ˆ˜๋Š” ์ต๋ช…ํ•จ์ˆ˜๋กœ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ทœ์น™์œผ๋กœ ํ•จ์ˆ˜ํ‘œํ˜„์‹์„ ์ถ•์•ฝํ•˜์—ฌ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ต์ˆ™ํ•ด์ง€๋Š”๋ฐ ์‹œ๊ฐ„์„ ๊ฑธ๋ฆฌ์ง€๋งŒ, ์ด๋Ÿฐ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์•ผํ•  ๋•Œ๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ˆˆ์— ์ตํ˜€๋‘ก์‹œ๋‹ค:)
๊ธฐ๋ณธ ํ˜•ํƒœ ๐Ÿ” let ํ•จ์ˆ˜์ด๋ฆ„ = (parameter1, parameter2..) => {Function Body}

  • ํ•จ์ˆ˜์— ์ „๋‹ฌํ•  parameter๊ฐ€ 1๊ฐœ ๋ฟ์ด๋ฉด ()๋กœ ์ƒ๋žต ๊ฐ€๋Šฅ
  • body๊ฐ€ 1์ค„์ด๋ผ๋ฉด, ์Šค์ฝ”ํ”„({}) ๋ฟ์•„๋‹ˆ๋ผ return๋„ ์ƒ๋žต ๊ฐ€๋Šฅ
  • body๊ฐ€ 2์ค„ ์ด์ƒ์ด๋ผ๋ฉด, {}๋ฅผ ๋ช…์‹œํ•ด์ฃผ๊ณ , ๊ฐ’์„ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด return ์ž…๋ ฅ
// ๊ธฐ๋ณธ ํ•จ์ˆ˜ ํ‘œํ˜„์‹(์ต๋ช… ํ•จ์ˆ˜)
const add = function (a, b) {
  return a + b;
};
// ํ™”์‚ดํ‘œ ํ•จ์ˆ˜(1๋‹จ body)
const add = (a, b) => a + b; // ๐Ÿ‘ˆ body๊ฐ€ 1์ค„์ผ ๋•Œ๋Š”, {} ๋ฐ return ๊นŒ์ง€ ์ƒ๋žต ๊ฐ€๋Šฅ
// ํ™”์‚ดํ‘œ ํ•จ์ˆ˜(2๋‹จ ์ด์ƒ body)
const add = (a, b) => {
  let result = a + b;
  return result; // ๐Ÿ‘ˆ ์Šค์ฝ”ํ”„๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค๋ฉด, return์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ’์„ ๋ฐ˜ํ™˜ ํ•„์ˆ˜
};
profile
Keep Going, Keep Coding!

0๊ฐœ์˜ ๋Œ“๊ธ€