section2 프로토타입 체인

유희준·2023년 3월 16일

section2

목록 보기
5/12

생성자는 기본적으로 함수이다. 우리가 함수를 호출할 때 new를 붙이면 new로 인해 그 함수는 생성자가 된다.

function Ultra(){}
Ultra.prototype.ultraProp = true;

function Super(){}
Super.prototype = new Ultra();

funciton Sub(){}
Sub.prototype = new Super();

var a = new Sub(); // new로 생성한 함수가 a에 객체가 된다.

이때 단순히 {} 로를 줌으로 객체를 넣어주지 않는이유는 비어있는 데이터가 아닌 로직으로 연결되어 있는 데이터가

필요하기 때문이다. 그렇다면 new Sub(); 원형 데이터는 어디에 있을까.

바로 Sub.prototype 이다. (prototype이라는 프로포티)

마찬가지로 new Super는 Super.prototyper 을, new Ultrea는 Ultra.prototype을 받는다.

이러한 개념을 프로토타입 체인이라 할 수 있다. 프로토타입이 프로토타입으로 연결되어있는 형태를 말한다.

profile
매일 뭐든하기

0개의 댓글