2024/11 3

[JS] Rest Syntax

1. Rest Syntax๋ž€?Rest Syntax๋Š” ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋  ๋•Œ ์ „๋‹ฌ๋œ ๋ชจ๋“  ์ธ์ž๋ฅผ ํ•˜๋‚˜์˜ ๋ฐฐ์—ด๋กœ ๋ฐ›์•„๋“ค์ด๋Š” ๋ฌธ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ฆ‰, ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ์•ž์— ...์„ ๋ถ™์ด๋ฉด, ํ•ด๋‹น ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ๋‚˜๋จธ์ง€ ๋ชจ๋“  ์ธ์ž๋“ค์„ ๋ฐฐ์—ด๋กœ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์˜ˆ์ œ:function f(...args) { const sum = args[0] + args[1]; return sum;}console.log(f(3, 4)); // 7f(3, 4)๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด, ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ args๋Š” [3, 4]๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.์ด์ฒ˜๋Ÿผ ํ•จ์ˆ˜์— ์ „๋‹ฌ๋œ ๋ชจ๋“  ์ธ์ž๋ฅผ ๋ฐฐ์—ด๋กœ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.2. ์™œ Rest Syntax๋ฅผ ์‚ฌ์šฉํ• ๊นŒ?์ฒ˜์Œ์—๋Š” "๊ทธ๋ƒฅ ๋ฐฐ์—ด์„ ํ•จ์ˆ˜์— ์ „๋‹ฌํ•˜๋ฉด ๋˜๋Š” ๊ฑฐ ์•„๋‹Œ๊ฐ€?"๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ Rest Syntax๋Š” ๊ฐ€๋ณ€์ ์ธ..

[JS] Arrow Syntax vs Function Syntax

ํ•จ์ˆ˜๊ฐ€ ๊ฐ์ฒด๋ผ๋Š” ์‚ฌ์‹ค์€ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žญ ์–ธ์–ด์™€ ๊ตฌ๋ณ„๋˜๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ์ค‘์š”ํ•œ ํŠน์ง•์ด๋‹ค.- ๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋”ฅ๋‹ค์ด๋ธŒ, ์ด์‘๋ชจJS ์—์„œ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๋กœ์ง์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์€ ์ƒ์„ฑ๋œ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ ์œ„ํ•ด ํ•จ์ˆ˜ ์ด๋ฆ„๊ณผ ๋™์ผํ•œ ์ด๋ฆ„์˜ ์‹๋ณ„์ž๋ฅผ ์•”๋ฌต์ ์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ , ๊ฑฐ๊ธฐ์— ํ•จ์ˆ˜ ๊ฐ์ฒด๋ฅผ ํ• ๋‹นํ•จ์ผ๊ธ‰๊ฐ์ฒด์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ํ•จ์ˆ˜๋Š” ๊ฐ’์ฒ˜๋Ÿผ ๋ณ€์ˆ˜์— ํ• ๋‹น๋˜๊ฑฐ๋‚˜, ํ”„๋กœํผํ‹ฐ ๊ฐ’ ๋˜๋Š” ๋ฐฐ์—ด์˜ ์š”์†Œ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Œ. ๊ฐ’์˜ ์„ฑ์งˆ์„ ๊ฐ–๋Š” ๊ฐ์ฒด๋ฅผ ์ผ๊ธ‰๊ฐ์ฒด ๋ผ๊ณ  ํ•จ// ๊ธฐ๋ช… ํ•จ์ˆ˜ ํ‘œํ˜„์‹var add = function foo (x,y) { return x+y;};// ํ•จ์ˆ˜ ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ์‹๋ณ„์ž๋กœ ํ˜ธ์ถœconsole.log(add(2,5)); //7// ํ•จ์ˆ˜ ์ด๋ฆ„์œผ๋กœ ํ˜ธ์ถœ -> ReferenceError// ํ•จ์ˆ˜ ์ด๋ฆ„์€ ํ•จ์ˆ˜ ๋ชธ์ฒด ๋‚ด๋ถ€์—์„œ๋งŒ ์œ ํšจํ•œ..

[LeetCode] 2667 create-hello-world-function

โœ” ๋ฌธ์ œ ๋งํฌhttps://leetcode.com/problems/create-hello-world-function/editorial/โœ” editorial ํ•™์Šต1. ์ต๋ช…ํ•จ์ˆ˜var f = function(a, b) { const sum = a + b; return sum;}console.log(f(3, 4)); // 7- ๋ฌด๊ธฐ๋ช… ํ•จ์ˆ˜ 2. ์ฆ‰์‹œ ์‹คํ–‰ ํ•จ์ˆ˜var res = (function () { var a = 3; var b = 5; return a + b;}())console.log(res); // 15res = (function (a, b) { return a * b;}(3, 5))console.log(res); // 15- ์ผ๋ฐ˜ ํ•จ์ˆ˜์ฒ˜๋Ÿผ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ธ์ˆ˜..