๋ฐ˜์‘ํ˜•

Deep Copy 1

[๋ชจ๋˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ Deep Dive] 11์žฅ ์›์‹œ ๊ฐ’๊ณผ ๊ฐ์ฒด์˜ ๋น„๊ต, ์–‡์€ ๋ณต์‚ฌ ๊นŠ์€ ๋ณต์‚ฌ

์ž๋น„์Šคํฌ๋ฆฝํŠธ๊ฐ€ ์ œ๊ณตํ•˜๋Š” 7๊ฐ€์ง€ ๋ฐ์ดํ„ฐ ํƒ€์ž… (์ˆซ์ž, ๋ฌธ์ž์—ด, ๋ถˆ๋ฆฌ์–ธ, Null, undfined, ์‹ฌ๋ฒŒ, ๊ฐ์ฒด ํƒ€์ž…)์€ ํฌ๊ฒŒ ์›์‹œ ํƒ€์ž…๊ณผ ๊ฐ์ฒดํƒ€์ž…์œผ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ์›์‹œ ํƒ€์ž…์˜ ๊ฐ’์€ ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค. ๊ฐ์ฒด ํƒ€์ž…์˜ ๊ฐ’์€ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ๊ฐ’์ž…๋‹ˆ๋‹ค. - ์›์‹œ ๊ฐ’์„ ๋ณ€์ˆ˜ ํ• ๋‹น ์‹œ ๋ณ€์ˆ˜(ํ™•๋ณด๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„)์—๋Š” ์‹ค์ œ ๊ฐ’์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ๊ฐ์ฒด ๋ณ€์ˆ˜ ํ• ๋‹น ์‹œ ๋ณ€์ˆ˜(ํ™•๋ณด๋œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„)์—๋Š” ์ฐธ์กฐ ๊ฐ’์ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. - ์›์‹œ ๊ฐ’ ๋ณ€์ˆ˜๋ฅผ ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ํ• ๋‹น ์‹œ ๊ฐ’์— ์˜ํ•œ ์ „๋‹ฌ (pass by value)๋ผ๊ณ  ํ•˜๊ณ , ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ณ€์ˆ˜๋ฅผ ๋‹ค๋ฅธ ๋ณ€์ˆ˜์— ํ• ๋‹นํ•˜๋ฉด ์ฐธ์กฐ์— ์˜ํ•œ ์ „๋‹ฌ (pass by reference)๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. 11.1 ์›์‹œ ๊ฐ’ 11.1.1 ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฐ’ const o = {}; // const ..

๋ฐ˜์‘ํ˜•