// 그림 추가
이를 코드로 바꾸면 다음과 같다.
var instance = new Contructor();
위 코드의 동작 과정은 다음과 같다.
<aside> 💡 prototype은 객체이다. 이를 참조하는 proto 또한 객체다.
</aside>
prototype 객체 내부에는 인스턴스가 사용할 메서드를 저장한다. 그러면 인스턴스에서도 숨겨진 프로퍼티인 proto 를 통해 이 메서드들에 접근할 수 있게 된다.
예시
var Person = function (name) {
this._name = name;
};
Person.prototype.getName = function() {
return this._name;
};
var suzi = new Person("Suzi");
suzie.__proto__.getName(); // undefined
이제 Person의 인스턴스는 proto 프로퍼티를 통해 getName을 호출할 수 있다.