객체 복사는 Object.assign()을 사용하시면 됩니다.
현재 obj 변수에 object가 할당되어 있습니다. 이를 새로운 변수 copiedObj에 전체 복사를 하고 싶으면 let copiedObj = Object.assign({}, obj) 하시면 됩니다. 그럼 메모리셀 내에서 이런 변확가 이루어지는 것을 확인할 수 있습니다.
let obj = { firstName: "coding", lastName: "kim" };
let copiedObj = Object.assign({}, obj);
console.log(copiedObj) // { firstName: "coding", lastName: "kim" }
console.log(obj === copiedObj) // false
Spread syntax는 배열 뿐만 아니라, 객체에서도 사용이 가능합니다...
{...obj} 이런식으로 기존 객체를 {...} 안에 넣어서 사용하시면 됩니다.
let obj = { firstName: 'coding', lastName: 'kim' }
let copiedObj = {...obj}
console.log(copiedObj) // { firstName: "coding", lastName: "kim" }
console.log(obj === copiedObj) // false