본문 바로가기

언어/javascript

javascript: 프로토타입 체이닝

반응형
const c1 = {
	name: 'C1',
    color: 'red',
};

const c2 = {
	name: 'C2',
    width: 300,
};

const c3 = {
	name: 'C3',
	height: 100,
};

c1.__proto__ = c3;
c3.__proto__ = c2;

console.log(c1.width); //300

자바사크립트에서는 현재 내부객체에서 호출 값을 찾지못하면 __proto__에서 그 값을 추가적으로 찾는다.

다음과 같이 체이닝 기법으로 연결해두면 값을 찾게 되는 매커니즘이다. 이렇게 프로토타입을 연결시켜서 재활용 할 수 있다.

 

함수의 프로토타입

function Foo(name) {
	this.name = name;
}

Foo.prototype.lastName = 'WooWa';

const f = new Foo('Hong Jeong Min');

console.log(f.name);
console.log(f.lastName);

 

반응형