https://cocobi.tistory.com/156
[JS] ์ฐธ์กฐ ํ์ ์ ์์ ๋ณต์ฌ์ ๊น์ ๋ณต์ฌ(Shallow Copy & Deep copy)
> ๊ด๋ จ ๊ธ :: [JS]์๋ฐ์คํฌ๋ฆฝํธ์ ์์ ํ์ ๊ณผ ์ฐธ์กฐ ํ์ ๐ ์๋ฐ์คํฌ๋ฆฝํธ์ ์ฐธ์กฐ ํ์ ์ ๋ณต์ฌ ๋ฐฉ๋ฒ ์ฐธ์กฐ ํ์ ์ ๋ฐ์ดํฐ๋ ๋ณต์ฌ ์ ๋ฐ์ดํฐ์ ๊ฐ์ด ์๋ '๊ฐ์ด ์ ์ฅ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์'๊ฐ ์ ์ฅ๋๋ค.
cocobi.tistory.com
์์ ๋ณต์ฌ(Shallow copy)๋ ์ฐธ์กฐ ํ์
๋ฐ์ดํฐ๊ฐ ์ ์ฅํ '๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ๊ฐ'์ ๋ณต์ฌํ ๊ฒ์ ์๋ฏธํ๋ค.
๋ฐ๋๋ก ๊น์ ๋ณต์ฌ(Deep copy)๋ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ๋ณดํด ์์ ํ ๋ณต์ฌํ๋ ๊ฒ์ ์๋ฏธํ๋ค.
โก๏ธ์ฌ๊ฑด์ ๋ฐ๋จ
const temp = list;
temp์ list ๋ณต์ฌํ๊ณ temp ์ง์ง๊ณ ๋ณถ๊ณ ํ๋๋ list๊ฐ ์๊พธ ๋ฐ๋.
๋๋์ฒด ์ ๊ทธ๋ฌ์ง ํ๋๋ฐ, ์์ ๋ณต์ฌ๋ผ์ ๊ทธ๋ ๋จ๋ค.
const temp = [...list];
์ฑ์งํผํฐ๊ฐ ์ด๋ ๊ฒ ํด๋ณด๋ผ๋๋ฐ, ์ด๊ฒ๋ ์ ๋จ.
const temp = JSON.parse(JSON.stringify(list));
์ด๊ฑด ๋จ ๊ตฟ
'Knowledge' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
call by reference/call by value (0) | 2022.04.13 |
---|---|
๋๊ธฐ์ vs ๋น๋๊ธฐ์ ํ๋ก๊ทธ๋๋ฐ (1) | 2022.04.08 |
HTTP vs HTTPS (1) | 2022.04.08 |
java 1.7 vs java 1.8 vs java11 vs java17 (1) | 2022.04.06 |
MYSQL vs ORACLE (0) | 2022.04.05 |