가장 간단한 상속 예제.
// 부모
var Parent = function() {
this.name = 'Parent';
this.func = function() {
alert(this.name);
};
}
// 자식
var Child = function() {
this.name = 'Child';
}
Child.prototype = new Parent(); // prototype에 부모지정
// 테스트
var oChild = new Child();
oChild.func();
var Parent = function() {
this.name = 'Parent';
this.func = function() {
alert(this.name);
};
}
// 자식
var Child = function() {
this.name = 'Child';
}
Child.prototype = new Parent(); // prototype에 부모지정
// 테스트
var oChild = new Child();
oChild.func();
만약 부모의 함수내용도 실행시키고 하는 식으로 사용할 경우 아래처럼.
(델파이의 inherited; 키워드와 동일)
// 부모
var Parent = function() {
this.name = 'Parent';
this.func = function() {
alert(this.name);
};
}
// 자식
var Child = function() {
this.parent = new Parent(); // 부모선언
this.name = 'Child';
this.func = function() {
this.parent.func(); // 이게 inherited;
alert(this.name);
};
}
Child.prototype = new Parent();
// 테스트
var oChild = new Child();
oChild.func();
var Parent = function() {
this.name = 'Parent';
this.func = function() {
alert(this.name);
};
}
// 자식
var Child = function() {
this.parent = new Parent(); // 부모선언
this.name = 'Child';
this.func = function() {
this.parent.func(); // 이게 inherited;
alert(this.name);
};
}
Child.prototype = new Parent();
// 테스트
var oChild = new Child();
oChild.func();
'JavaScript' 카테고리의 다른 글
[JavaScript] 브라우저가 canvas를 지원하는지 체크 (0) | 2010.02.12 |
---|---|
[JavaScript] 10진수, 16진수 변환 (0) | 2010.01.11 |
[JavaScript] 정적 클래스, 동적 클래스 (0) | 2010.01.04 |
[JavaScript] 객체 내에서 생성된 노드에 이벤트 걸기 (0) | 2009.12.31 |
[JavaScript] 함수 인자 전달시 변수 범위 (0) | 2009.12.31 |