Open sbyeol3 opened 2 years ago
객체 리터럴 방식으로 생성된 객체는 결국 내장 함수(Built-in)인 Object()
생성자 함수로 객체를 생성하는 것을 단순화시킨 것이다. 자바스크립트 엔진은 객체 리터럴로 객체를 생성하는 코드를 만나면 내부적으로 Object()
생성자 함수를 사용하여 객체를 생성한다.
어떠한 방식으로 함수 객체를 생성하여도 모든 함수 객체의 prototype 객체는 Function.prototype
이다. 생성자 함수도 함수 객체이므로 생성자 함수의 prototype 객체는 Function.prototype
이다.
프로토타입
[[Prototype]]
에 저장되는 프로토타입은 객체 생성 방식에 의해 결정된다.[[Prototype]]
내부 슬롯에는 직접 접근할 수 없지만__proto__
접근자 프로퍼티를 통해 자신의 프로토타입에 간접적으로 접근할 수 있다.__proto__
접근자 프로퍼티를 사용할 수 있는 것은 아니다.생성 시점
프로토타입 체인
instanceof
: 생성자 함수의 prototype에 바인딩된 객체가 프로토타입 체인 상에 존재하는지 확인열거