객체 생성자
를 상속 받을 수 있다.
function Animal(type, name, sound) {
this.type = type;
this.name = name;
this.sound = sound;
}
Animal.prototype.say = function() {
console.log(this.sound);
}
위와 같은 상황에서 Animal 객체 생성자를 상속받아 Dog와 Cat이라는 객체 생성자를 만든다고 하면
function Dog(name, sound) {
Animal.call(this, '개', name, sound); //여기서 this는 Dog 객체 생성자에서의 this
//그리고 this 다음 파라미터들은 Animal 객체 생성자에 넣어야 하는 값들
}
function Cat(name, sound) {
Animal.call(this, '고양이', name, sound);
}
Dog.prototype = Animal.prototype; //Dog의 prototype에 Animal의 prototype 설정
Cat.prototype = Animal.prototype;
이렇게 하면 된다.