프로토타입 객체
- 함수를 선언했을 때, 함수의 prototype 프로퍼티로 접근할 수 있는 객체
js
function Rabbit() {}
// Rabbit.prototype = { constructor: Rabbit }
let rabbit = new Rabbit();
console.log(rabbit.constructor === Rabbit);
// true, {constructor: Rabbit}을 상속받음
console.log(rabbit.__proto__ === Rabbit.prototype);
// true
function Rabbit() {}
// Rabbit.prototype = { constructor: Rabbit }
let rabbit = new Rabbit();
console.log(rabbit.constructor === Rabbit);
// true, {constructor: Rabbit}을 상속받음
console.log(rabbit.__proto__ === Rabbit.prototype);
// true
__proto__
는 내부 프로퍼티[[Prototype]]
의 getter, setter 이다.
js
Object.getPrototypeOf(rabbit) === rabbit.__proto__;
Object.getPrototypeOf(rabbit) === rabbit.__proto__;