몽탁이의 개발일기
상속 본문
자바스크립트에서의 상속은 prototype이라는 객체가 있기 때문에 가능합니다.
우선은 자바스크립트에서 상속을 어떻게 사용하는지에 대해서만 설명하고
다음에 prototype이라는 개념을 알아보겠습니다.
상속은 특정 객체의 기능들을 물려받아 사용하거나 기능을 더 추가하여 사용할 수 있게 하는 것입니다.
이런 특성은 재활용성을 높여주고 유지보수에 있어서 간편하게 해 줄 수 있습니다.
function Person(name){
this.name = name;
}
Person.prototype.name = null;
Person.prototype.introduce = function() {
return 'My name is ' + this.name;
}
function Programmer(name) {
this.name = name;
}
Programmer.prototype = new Person();
Programmer.prototype.coding = function() {
return "hello world";
}
var p1 = new Programmer('egoing');
document.write(p1.introduce()+"<br/>");
document.wirte(p1.coding()+"<br/>");
위 예제는 Person이라는 생성자를 정의하고 Person 생성 자안에 prototype 객체 안에 프로퍼티를 선언하였습니다.
그리고 해당 생성자를 Programmer의 prototype 객채 안에 생성하여 Programmer가 Person의 기능들을
사용할 수 있게 됩니다.
여기서 알 수 있는 것은 생성자를 생성할 때 prototype안에 들어있는 객체를 리턴한다는 것입니다.
또 중간에 prototype에 직접 프로퍼티를 정의하여 추가하는 것도 가능합니다.