학습 노트 2:자바 script 대상 프로그램 디자인 계승 용법 분석
3427 단어 Javascript대상 을 향 하 다이어받다
1.상속 에 관 하여:
바 이 두 백과계승 에 대한 해석 은 계승 은 한 대상 이 다른 대상 의 속성 과 방법 을 직접 사용 하 는 것 을 말한다.
(컴퓨터 개념의 계승 에 대한 백과 의 해석 도 너무 간략 하 다)
후계 의 좋 은 점,장점 을 배 워 서 대상 을 대상 으로 하 는 학우 들 이 모두 알 고 있 으 니 군말 하지 않 겠 다.
javascript 의 계승 은 세 가지 가 있 습 니 다.
구조 함수 계승 이란 새로운 대상 을 만 들 고 부류 구조 함 수 를 호출 하여 실현 하 는 계승 이다.
(지식 점:함수 대상 의 원형 은 constructor 라 는 속성 이 있 습 니 다.constructor 가 실제 가리 키 는 것 은 이 함수 입 니 다)
function person(name){
this.name = name;
}
extend(author, person);
function extend(subclass, superclass){
var f= function(){};
f.prototype = superclass.prototype;//f.prototype.constructor = superclass
subclass.prototype = new f();// superclass(), subclass.prototype.construcor = superclass
subclass.prototype.constructor = subclass;// subclass
}
3.원형 계승우 리 는 자 바스 크 립 트 가 한 대상 의 속성 을 인용 할 때 먼저 이 대상 에 게 이 속성 이 있 는 지,없 으 면 이 대상 의 원형 에 이 속성 이 있 는 지 계속 볼 것 임 을 알 고 있 습 니 다.
var person ={}
var author = clone(person);
function clone(obj){
function F(){};
F.prototype = obj;
return new F;
}
clone 함수 의 역할 은 부모 클래스 의 모든 구성원 을 새로운 대상 의 prototype 에 주 고 새로운 대상 prototype 의 구성원 이 되 는 것 입 니 다.따라서 하위 클래스 는 하나의 부모 클래스 속성 을 인용 할 때 prototype 에서 찾 을 수 있 습 니 다.그러나 이러한 방식 으로 계승 하 는 것 은 모든 복 제 된 대상 이 모든 속성 과 방법 을 공유 하 는 유일한 인 스 턴 스 입 니 다(모두 원형 을 통 해 읽 기 때 문 입 니 다).복 제 된 대상 의 속성 과 방법 을 직접 설정 해 야 상황 이 달라 집 니 다.4.원형 할당(옮 겨 다 니 기)계승
이러한 할당 이 원형 할당 보다 좋 은 점 은 계승 범 위 를 통제 하 는 데 있다.
var person = {};
augment(author, person);
// ,
function augment(receivingclass, givingclass){
if(arguments[2]){
for(var i=2;i<arguments.length;i++){
receivingclass.prototype[arguments[i]] = givingclass.prototype[arguments[i]];
}
}
else{
for(methodname in givingclass.prototype){
receivingclass.prototype[methodname] = givingclass.prototype[methodname];
}
}
}
이러한 방식 은 var obj 와 같은 정의 대상 에 비교적 적용 되 며 함수 로 정의 하 는 대상 이 아 닙 니 다.함수 로 정의 하 는 대상 을 사용 하 는 동시에 계승 하 는 구성원 도 지정 해 야 합 니 다.constructor 를 잊 지 마 세 요.관심 있 는 친 구 는 온라인 HTML/CSS/JavaScript 코드 실행 도 구 를 사용 할 수 있 습 니 다.http://tools.jb51.net/code/HtmlJsRun상기 코드 실행 효 과 를 테스트 할 수 있 습 니 다.
자 바스 크 립 트 관련 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있 습 니 다.,,,,,javascript 대상 입문 강좌,JavaScript 오류 및 디 버 깅 기술 요약,JavaScript 데이터 구조 와 알고리즘 기술 총화과JavaScript 스 트 리밍 알고리즘 및 기술 총화.
본 고 에서 말 한 것 이 여러분 의 자 바스 크 립 트 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Javascript에서 Math.max와 Math.max.apply의 차이점과 용법 상세 설명최근에 작은 사례를 만들 때 Math를 만났어요.max.apply라는 용법은 이전에 보기 드물게 재미있게 느껴졌으니 기록해 보세요. 1Math.max 문법:Math.max(n1,n2,n3,...,nX)반환값:max(...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.