prototype2 [Prototype] Prototype Chaining js에서는 클래스 개념이 없고 리터럴 방식이나 생성자로 객체를 생성한다. 이 때 생성된 객체의 부모가 무엇인지 파악해보자. 생성자 함수로 객체를 생성하는 경우 객체의 부모는 생성자 함수의 prototype속성이 참조하는 객체이다. 앞서 생성자 함수는 constructor가 있는 객체를 가리킨다고 한 것을 기억할 것이다. 리터럴로 객체를 생성하는 경우 var a = {} 와 같이 생성하면 내부적으로 Ojbect() 생성자 함수를 사용해 객체를 생성한다. 그리고 a의 부모는 Object 생성자 함수가 prototype속성으로 가리키는 객체이다. 모든 함수는 prototype속성이 있다. a.hasOwnProperty('name'); 이 때 위 코드를 실행할 수 있을까? 답은 그렇다. 왜냐하면 a의 부모인 O.. 2020. 6. 2. [Data type] Prototype 빈 Object를 만들면 아무 기능도 사용할 수 없을까? 답은 [[Prototype]]이 무엇인지에 따라 달라진다. 표준인 ECMAScript에서 객체 생성시 객체를 연결 할 수 있도록 해두었다. 연결되는 객체를 [[Prototype]]이라 한다. 크롬에서는 __proto__로 보여준다. 2020. 5. 30. 이전 1 다음