아래의 경우는 값을 공유하기 때문에 원본을 수정하면 복사본까지 수정이 된다!
const size = [1,2,3]
const test = size
size.push(10)
console.log(test)
console.log(size)
원본에 새로운 값을 넣어도 복사본에는 영향이 가지 않는다.
즉, 별개의 복사본을 만드는 것이다. 🔗(object복사하는 방법도 동일하다)
const size = [2,3,4,5,6,7,8,9]
const test = [...size]
size.push(10)
console.log(size) /// [ 1, 2, 3, 10 ]
console.log(test) /// [ 2, 3, 4, 5, 6, 7, 8, 9]
리액트의 경우에도 state를 직접적으로 수정할 수 없기 때문에 deep copy해서 수정해야한다