복사사용 하기

데이터 원본을 그대로 수정한다면 의도치 않은 사이드 이펙트를 방지하기위해서 데이터의 원본을 바로 수정하것은 지양하는 것이 좋습니다. 복사를 하여 카피본을 만들어서 사용하는 습관을 가지는것이 좋습니다.

const obj = {name: 'dale', age: 30, place: 'seoul'};

const objCopy1 = Object.assign({},obj) // Object.assign 메소드
const objCopy2 = {...obj} // ES6 스프레드 문법

propery 삭제 방법 (구조분해 할당, delete 메소드)

구조 분해 할당을 사용하거나 자바스크립트에서 지원하는 메소드 중에 delete 를 사용하면 객체 내 원하는 propery (key, value)를 삭제시킬수 있습니다. delete 사용하면 원본 객체의 데이터가 바뀌게 되어 복사후 사용하는것이 데이터 관리에 좋다고 생각합니다.

구조 분해 할당

const obj = {name: 'dale', age: 30, place: 'seoul'};

/* 구조 분해 할당 */
const {name, ...rest} = obj; // name,  ...rest(name을 제외한 property)
const result = {...rest} // { age: 30, place: 'seoul' }

/* 원본 */
obj // { name: 'dale', age: 30, place: 'seoul' }

delete 메소드

const obj = {name: 'dale', age: 30, place: 'seoul'};

const objCopy1 = Object.assign({},obj)
const objCopy2 = {...obj}	

delete objCopy1['name']
delete objCopy1['age']

objCopy1 // { place: 'seoul' }

delete objCopy2['age']
objCopy2 // { name: 'dale', place: 'seoul' }

/* 원본 데이터 */
obj // { name: 'dale', age: 30, place: 'seoul' }
profile
Junior Front-End Developer 👨‍💻

0개의 댓글