Object.assign(target, ...sources)
타겟객체에 소스객체들을 복사한다.
하지만 소스객체에있는 하위객체는 얕은복사된다.
Object.defineProperty(target, prop, descriptor)
객체에 프로퍼티를 추가한다.
descriptor는 설명자(속성객체)
writable,enumerable,configurable 기본값 false
let user ={};
user.name ='John'; 리터럴객체에 이렇게 추가하면 writable,enumerable,configurable true로 설정된다.