본문 바로가기
JavaScript

JavaScript 기초(23)_객체(3)

by DeBanker.K 2021. 10. 20.

1. 프로토타입의 상속

프로토타입의 상속에 대한 기초적인 예제를 아래와 같이 작성해보았다. 

// prototype 상속

function Person(){
}

Person.prototype.hello = function(){
    console.log('hello');
}

function Korean(region){
    this.region = region;
    this.where = function(){
        console.log('where', this.region);
    };
}

Korean.prototype = Person.prototype;

const k = new Korean('seoul');

k.hello();
k.where();
[Running] n
hello
where seoul

비어있는 함수  Person의 프로토타입에 hello를 출력하는 함수를 가진 함수 hello를 대입하였고,

그것을 함수 Korean의 프로토타입에 그대로 대입하여보니,

생성자 함수 Korean을 통한 객체 k에 그대로 상속되어있음을 알 수 있었다.  

 

 

위 코드에 'instasceof'를 통하여 프로토타입이 어떤 객체에 체인이 되어있는지 확인할 수 있다. 

아래와 같이 객체 k 가 각 함수의 프로토타입에 체인 되어있는가를 검사해보자.

console.log(k instanceof Korean);
console.log(k instanceof Person);
console.log(k instanceof Object);
[Running] 
true
true
true

객체 k 는 'Korean', 'Person', 'Object' 모두에 체인 되어 있음을 알 수 있다. 

 

 

'JavaScript' 카테고리의 다른 글

JavaScript 기초(25)_객체(5)  (0) 2021.10.22
JavaScript 기초(24)_객체(4)  (0) 2021.10.21
JavaScript기초(22)_객체(2)  (0) 2021.10.16
JavaScript기초(21)_객체(1)  (0) 2021.10.15
JavaScript기초(20)_함수(6)  (0) 2021.10.14

댓글