[JavaScript] ํ•จ์ˆ˜์˜ ๋ถˆ๋ณ€์„ฑ(Immutability) ์ด๋ž€?

ํ•จ์ˆ˜์˜ ๋ถˆ๋ณ€์„ฑ์ด๋ž€? ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์™ธ๋ถ€๋กœ๋ถ€ํ„ฐ ์ฃผ์–ด์ง„ parameter์˜ ๊ฐ’ ๋˜๋Š” ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์•„์•ผ ํ•จ์„ ๋œปํ•œ๋‹ค. ๊ฐ’ ๋˜๋Š” ์ƒํƒœ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—๋Š” ์ƒˆ๋กœ์šด ๊ฐ’ ๋˜๋Š” ๊ฐ์ฒด(Object)๋ฅผ ๋งŒ๋“ค์–ด์„œ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•œ๋‹ค. Primitive Type ๋ฐ์ดํ„ฐ primitive ๋ฐ์ดํ„ฐ์˜ ๊ฒฝ์šฐ ๊ฐ’์„ ๋ณต์‚ฌ(pass by value)ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ•จ์ˆ˜์— ๋งค๊ฐœ ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๋”๋ผ๋„, ์›๋ž˜ ๋ณ€์ˆ˜๋Š” ๋ฐ”๋€Œ์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋Ÿผ์—๋„, ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๋‚˜ ์‚ฌ์šฉ์ž๋“ค์ด ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•จ์— ์žˆ์–ด ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์›๋ž˜์˜ ๊ฐ’์„ ๋ฐ”๊พธ๋Š” ๊ฒƒ์€ ์ข‹์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•ด์„œ, ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌ๋œ ๊ฐ’์„ ํ• ๋‹นํ•œ ์ดํ›„์— ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•˜๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด, const count = val, count = 6; ์ด๋Ÿฐ์‹์œผ๋กœ count๋ผ๋Š” ์ƒˆ๋กœ์šด..

[JavaScript] ํ•จ์ˆ˜์˜ ์ธ์ž(parameters)์— ๋Œ€ํ•˜์—ฌ

ํ•จ์ˆ˜์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์— ์•„๋ฌด๊ฒƒ๋„ ์ „๋‹ฌํ•˜์ง€ ์•Š์œผ๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ? a์™€ b๋ฅผ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๋ฐ›์•„ ๋‘ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ณฑ์„ ๋ฐ˜ํ™˜ํ•ด์ฃผ๋Š” multiply ํ•จ์ˆ˜๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž. ๋งŒ์•ฝ ์•„๋ž˜ ์ฝ”๋“œ์ฒ˜๋Ÿผ multiply ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ–ˆ๋Š”๋ฐ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ „๋‹ฌํ•ด์ฃผ์ง€ ์•Š๋Š”๋‹ค๋ฉด ์ธ์ž๋Š” ์–ด๋–ค ํƒ€์ž…์„ ๊ฐ€์ง€๊ฒŒ ๋ ๊นŒ? function multiply(a, b){ return a * b; }; multiply(); ๋งค๊ฐœ๋ณ€์ˆ˜๋“ค์ด ์ „๋‹ฌ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, console์— ๊ฐ ๋งค๊ฐœ๋ณ€์ˆ˜๋“ค์ด ์–ด๋–ป๊ฒŒ ๋ฐ›์•„์™€์ง€๋Š”์ง€ ํ™•์ธํ•ด๋ณด์ž. function multiply(a, b){ console.log(a); // undefined console.log(b); // undefined return a * b; }; multiply(); ์œ„์˜ ์ฝ”๋“œ์ฒ˜๋Ÿผ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์ „๋‹ฌ๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ..

๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
ยซ   2024/05   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
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
๊ธ€ ๋ณด๊ด€ํ•จ