먼저 user 객체를 생성합니다.
let user = {
name: "sungjun",
age: 50,
size: {
height: 200,
weight: 70,
}
};
다음으로 deepCopy 객체를 생성한 후 JSON.stringify() 함수를 통해 user객체를 문자열로 변환합니다. 그 후 JSON.parse() 함수를 통해 문자열 user를 다시 object 형태로 변환해줍니다. (정말 간편한 방법인 것 같습니다.)
let deepCopy = JSON.parse(JSON.stringify(user));
다음으로 deepCopy.size.height의 값을 250으로 변경하신 후 결과를 보시면 user객체와 별개로 값이 변경되는 걸 확인하실 수 있습니다.
deepCopy.size.height = 250;
{ name: 'sungjun', age: 50, size: { height: 250, weight: 70 } }
{ name: 'sungjun', age: 50, size: { height: 200, weight: 70 } }
'zero-base 프론트엔드 스쿨 ⛪️' 카테고리의 다른 글
우희은 선생님의 입문자를 위한 자바스크립트 실습 후기 (0) | 2022.12.28 |
---|---|
20221224 다섯 번째 mission❗ & 느낀점 (0) | 2022.12.24 |
20221216 네 번째 mission❗ (0) | 2022.12.16 |
Deep Copy, Shallow Copy (1) | 2022.12.13 |
20221213 세 번째 mission❗ (0) | 2022.12.13 |