Object.create(proto, [descriptors]) : [[prototype]]이 proto를 참조하는
새로운 객체 생성
Object.getPrototypeOf(obj) : obj의 [[prototype]]을 반환.
Object.setPrototypeOf(obj, proto) : obj의 [[prototype]]이 proto가 되게 함.
객체 복사
let clone = Object.create(Object.getPrototypeOf(obj), Object.getOwn
PropertyDescriptors(obj))
obj.hasOwnProperty(key) : 상속받지 않은 obj key들 중에서 key가 있으면 true
Object.getOwnPropertyNames(obj or func.prototype) : Object.keys()는
객체의 key들만 배열로 정렬하지만 이 메소드는 prototype의 key들도 정렬 가능.