더북(TheBook)

5.7 JSON 객체의 변화 감지하기

스벨트의 JSON 객체 감지를 이해하기 위해서 자바스크립트에서 JSON 객체 복사가 어떻게 일어나는지 알아보고, 스벨트에서는 코드에 어떻게 적용하여야 반응성이 잘 동작하는지 알아보겠습니다.

우선 자바스크립트에서 JSON 객체를 복사할 때 어떤 일이 일어나는지 알아보겠습니다.

자바스크립트에서 JSON 객체를 신규 객체로 복사하면 원본 객체의 값이 복사되어 신규 객체로 저장되지 않고 신규 객체에는 원본 객체의 참조(주소)만 복사됩니다. 따라서 원본 객체의 값이 수정되었을 때 복사된 객체에서도 똑같이 값이 수정되는 효과가 있습니다. 코드를 통해서 확인해보겠습니다.

순수 자바스크립트 코드
    let man = {
          age: "10",
          name: { first: "승현", last: "박"}
    };
    let name = man.name;

우선 원본 객체로 man 객체를 생성했습니다. man 객체는 하위로 age, name이란 키를, age는 10이란 값을, 하위 객체 name은 다시 하위에 first, last의 키와 값을 갖는 객체를 가집니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.