참조에 의한 객체 복사
-
객체는 참조에 의해 할당되고 복사됨
-
변수엔 ‘객체’ 자체가 아니라 객체의 메모리상의 주소인 ‘참조값’이 저장됨
-
복사된 참조 이용 시 모든 작업은 동일한 객체를 대상으로 이뤄짐
-
객체 비교는 참조값을 비교한 알고리즘. 피연산자인 두개의 객체가 동일한 프로퍼티 가지고 있더라도 참조값이 다르면 false 반환
-
객체 복사
-
얕은 복사
객체의 겉만 복사
for in 이나 object.assign 등으로 복사
-
깊은 복사
객체 내부의 객체(중첩객체) 까지 전부 복사
for in 으로 각 값 검사하며 일일히 복사하거나 라이브러리, 표준 알고리즘 등으로 복사
-
-
Obejct.assign(dest, [src1, …]) 은 여러 객체를 하나로 병합할 떄 사용하며 dest는 타겟이 되는 객체, [src, …]은 복사되는 객체.