프로토 타입

jake·2021년 8월 29일
0

JavaScript문법

목록 보기
19/21
post-thumbnail
  • 프로토타입
    재활용 - 자기가 갖고있으면 좋을 데이터와 메소드만 가지고있고, 공통적으로 사용될 만한 것을 상위객체에 만들어 놓는다.


  • 자바스립트 Foo함수
  1. Foo함수는 객체로 만들어져 있어서 __proto__속성을 가지고있다.
  2. Foo.prototype이라는 속성도 가지고 있다. Foo함수 그 자체를 가르킨다.
  3. new연산자를 통해서 함수의 일반 객체를 만들면 아래 처럼 생성될 객체의 __proto__속성과 Foo.prototype을 연결 시킨다.

    4.f객체를 콘솔하면 name 속성 밖에 없지만 f.lastname을 콘솔하면 "우와"가 나온다.
    그 이유는 Foo함수 this.__proto__에 Foo.prototype이 연결 되어있고 동적바인딩으로 Foo.prototype.lastname 속성이 추가되었다

    요즘은 prototype은 잘 안쓰이고 class를 더 많이 쓴다. 하지만 class가 함수의 프로토 타입 메커니즘을 이용하기 때문에 이해를 해두는 것이 필요하다한다.
profile
열린 마음의 개발자가 되려합니다

0개의 댓글