js 클래스 계승
유형 계승: 대략적인 사고방식 1 그 구조 함수를 계승하고 2.그 방법을 계승하고, 3 그 구조 결과를 성명하고, 4 덮어쓰고 자신을 확장하는 방법
우선 일반 클래스 정의하기 Person
//
function Person(name){
this.name=name
}
//
Person.prototype.getName=function(){
return this.name
}
// Person
var boy=new Person("mali");
boy.getName();
상속 Person을 위한 새 클래스 Author 만들기
function Author(name,books){
//
Person.call(this,name);
this.books=books;
}
//
Author.prototype=new Person();
//
Author.prototype.constructor=Author;
//
Author.prototype.getBooks=function(){
return this.books;
}
클래스의 성명을 간소화하기 위해 전체 과정을 포장하고 extend 함수를 설명할 수 있습니다.
아래의 봉인 함수는 부류를 계승하는 방법에 대해 봉인되었지만, 구조 함수에 대해 계승하지 않았으며, 수동으로call을 호출하여 완성해야 한다
function extend(subclass,superclass){
// superclass
var F=function(){};
// superclass F
F.prototype=superclass.prototype;
// subclass F
subclass.prototype=new F();
subclass.prototype.constructor=subclass;
}
function Author(name,book){
Person.call(this,name);
this.book=book;
}
extends(Author,Person);
Author.prototype.getBook=function(){
return this.book;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
기능 재검토(프로토타입 아님) 🤥빠른 수정을 위한 몇 가지 참고 사항 사용자 지정 속성이 있는 함수 이것은 대부분의 경우 런타임 바인딩이므로 someKey는 aFunction 또는 aFunction.prototype의 속성이 아닙니다. 접두사 cu...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.