라이브러리
[JAVASCRIPT] Object.getPrototypeOf(obj) - 객체의 프로토타입(부모 객체)을 반환
Object.getPrototypeOf(obj)
`Object.getPrototypeOf(obj)`는 JavaScript에서 객체의 프로토타입을 반환하는 메서드입니다. 이 메서드는 `__proto__` 속성을 사용하여 프로토타입을 반환합니다.
Syntax
#hostingforum.kr
javascript
Object.getPrototypeOf(obj)
Parameters
* `obj`: 객체의 프로토타입을 반환할 객체
Return Value
* 객체의 프로토타입
예제
#hostingforum.kr
javascript
// 객체를 생성합니다.
let obj = { name: 'John', age: 30 };
// 객체의 프로토타입을 반환합니다.
console.log(Object.getPrototypeOf(obj));
// { constructor: [Function: Object], __proto__: null }
// 프로토타입의 프로퍼티를 확인합니다.
console.log(Object.getPrototypeOf(obj).__proto__);
// null
프로토타입 체인
JavaScript는 프로토타입 체인을 사용하여 객체의 프로퍼티를 검색합니다. 프로토타입 체인은 객체의 프로토타입, 그 프로토타입의 프로토타입, 그 프로토타입의 프로토타입, ...을 순서대로 검색합니다.
#hostingforum.kr
javascript
// 객체를 생성합니다.
let obj = { name: 'John', age: 30 };
// 객체의 프로토타입을 반환합니다.
console.log(Object.getPrototypeOf(obj));
// { constructor: [Function: Object], __proto__: null }
// 프로토타입의 프로퍼티를 확인합니다.
console.log(Object.getPrototypeOf(obj).__proto__);
// null
// 프로토타입 체인을 사용하여 프로퍼티를 검색합니다.
console.log(obj.__proto__.constructor === Object); // true
프로토타입의 삭제
프로토타입의 프로퍼티를 삭제할 수 있습니다.
#hostingforum.kr
javascript
// 객체를 생성합니다.
let obj = { name: 'John', age: 30 };
// 프로토타입의 프로퍼티를 삭제합니다.
delete Object.getPrototypeOf(obj).constructor;
// 프로토타입 체인을 사용하여 프로퍼티를 검색합니다.
console.log(obj.__proto__.constructor === Object); // false
결론
`Object.getPrototypeOf(obj)`는 JavaScript에서 객체의 프로토타입을 반환하는 메서드입니다. 이 메서드는 `__proto__` 속성을 사용하여 프로토타입을 반환합니다. 프로토타입 체인은 객체의 프로퍼티를 검색하는 데 사용됩니다. 프로토타입의 프로퍼티를 삭제할 수 있습니다.
댓글목록
등록된 댓글이 없습니다.