deepcopy
JS ์์ ๋ณต์ฌ์ ๊น์ ๋ณต์ฌ
๊ฐ์ฒด(Object)๋ฅผ ๋ณต์ฌํ๋ ๋ฐฉ๋ฒ์ ์์ ๋ณต์ฌ(Shallow Copy) ์ ๊น์ ๋ณต์ฌ(Deep Copy) ๋ก ๋๋ฉ๋๋ค. ์ฌ์ฉํ๋ ๋ฉ์๋๋ ์ฌ๋ฟ ์์ง๋ง, ์ปจ์ ์ 2๊ฐ์ง ์ ๋๋ค. ๊ฐ์ ์ฃผ์ ๊ฐ์ ๋ณต์ฌํด ์ค ๊ฒ์ธ์ง, ๊ฐ ์์ฒด๋ฅผ ๋ณต์ฌํด ์ค ๊ฒ์ธ์ง์. ๊ฐ์ฒด๊ฐ์ ์ฐธ์กฐํ ๋ฐ์ดํฐ๋ฅผ ๋ณต์ฌํ๊ฒ ๋๋ฉด, ๊ฐ์ด ๋ฉ๋ชจ๋ฆฌ ์ ์ ํ ๋น๋๋ ๊ฒ์ด ์๋๋ผ ๊ฐ์ด ๋ค์ด ์๋ ์ฃผ์๊ฐ(์ฐธ์กฐ๊ฐ) ์ด ๋ฉ๋ชจ๋ฆฌ ์ ์ ๋ค์ด ๊ฐ๋๋ค. ๋๋ฌธ์ ๋ณต์ฌ๋ฅผ ํ๊ฒ ๋๋ฉด, ๊ฐ ์์ฒด๊ฐ ์๋๋ผ ๊ฐ์ด ๋ค์ด๊ฐ ์๋ ์ฃผ์๊ฐ ์ ๋ฌ ๋ฉ๋๋ค. ์ด๋ ๊ฒ ๋ณต์ฌ๋๋ ๊ฒ์ Shallow Copy ๋ผ๊ณ ํฉ๋๋ค. Shallow Copy spread syntax, Array.prototype.concat(), Array.prototype.slice(),Array.from(), Object.as..