๐ง๐ป Web/JavaScript
[์๋ฐ์คํฌ๋ฆฝํธ] 2์ฐจ์ ๋ฐฐ์ด ๊น์ ๋ณต์ฌ ํ๊ธฐ
Lennon
2022. 3. 16. 22:59
728x90
๋ฐ์ํ
์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ๋ค๊ฐ 2์ฐจ์ ๋ฐฐ์ด์ ๊น์ ๋ณต์ฌํด์ผํ ์ํฉ์ด ์ฌ ์๋ ์๋ค.
์๋์ฒ๋ผ ์ฐ๋ฆฌ๊ฐ ์๋๋๋ก ์งํํ๋ฉด ์๋ณธ ๋ฐฐ์ด์ ๊ฐ์ด ๊ณ์ ๋ฐ๋๋ ๊ฑธ ํ์ธํ ์ ์๋ค.
let arr1 = [[1,2,3],[2,3,4]]
let arr2 = [...arr1];
arr2[0][0] = 0;
console.log(arr1); // [[0,2,3],[2,3,4]]
console.log(arr2); // [[0,2,3],[2,3,4]]
์ด๋ ํฐํ์ธ arr1๋ง ๊น์ ๋ณต์ฌ๊ฐ ๋๊ณ ๊ฐ์ฅ ์ค์ํ ์์ ๋ฐฐ์ด ๊ฐ ํ๋ค์ ๋์ผํ ๊ฐ์ ์ฐธ์กฐํ๊ณ ์๋ค๋ ๊ฑธ(์์ ๋ณต์ฌ) ์๋ฏธํ๋ค.
2์ค ๋ฐฐ์ด์ ๊น์ ๋ณต์ฌํ๋ ค๋ฉด ๊ฐ ํ๋ง๋ค ๋์ผํ๊ฒ ๊น์ ๋ณต์ฌ ํด์ฃผ๋ฉด ๋๋ค.
let arr1 = [[1,2,3],[2,3,4]]
let arr2 = arr1.map(v => [...v]);
arr2[0][0] = 0;
console.log(arr1); // [[1,2,3],[2,3,4]]
console.log(arr2); // [[0,2,3],[2,3,4]]
728x90
๋ฐ์ํ