js 계승의 두 번째 -----차용 구조 함수
1493 단어 functionConstructorcolors
이런 기술의 기본 사상은 상당히 간단하다. 즉, 하위 유형 구조 함수의 내부에서 초유형 구조 함수를 호출하는 것이다.함수가 보충되었을 때 특정 환경에서 실행된 것만 잊지 마라
코드의 대상이기 때문에 apply()와 콜() 방법을 사용하여 새로 만든 대상에서 구조 함수를 다음과 같이 실행할 수 있다.
<script type="text/javascript">
function SuperType(){
this.colors = ["red","blue","green"];
}
function SubType(){
// SuperType
SuperType.call(this);
}
var instance1 = new SubType();
instance1.colors.push("black");
alert(instance1.colors);//"red,blue,green,black"
var instance2 = new SubType();
alert(instance2.colors);//"red,blue,green"
</script>
이렇게 하면 SubType의 모든 실례는 자신의 colors 속성의 사본을 가지게 된다.
1. 매개 변수 전달
원형 체인에 비해 구조 함수를 빌려 쓰는 것은 매우 큰 장점이 있다. 즉, 서브 유형 구조 함수에서 초유형 구조 함수에 파라미터를 전달할 수 있다.다음과 같습니다.
<script type="text/javascript">
function SuperType(name){
this.name = name;
}
function SubType(){
// SuperType,
SuperType.call(this,"Nicholas");
// ; , 。
this.age = 29;
}
var instance = new SubType();
alert(instance.name);
alert(instance.age);
</script>
2. 구조 함수를 빌려 쓰는 문제
만약에 구조 함수만 빌려 쓰면 구조 함수 모델에 존재하는 문제점을 피할 수 없다. 방법은 모두 구조 함수에 정의되어 있기 때문에 함수 복용은 말할 여지가 없다.
또한 초유형에 정의된 방법은 하위 유형에도 보이지 않으며 결과적으로 모든 유형은 구조 함수 모델만 사용할 수 있다.
이런 문제점을 감안하면 구조 함수를 빌려 쓰는 기술도 단독으로 사용하는 경우가 드물다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
콜백 함수를 Angular 하위 구성 요소에 전달이 예제는 구성 요소에 함수를 전달하는 것과 관련하여 최근에 직면한 문제를 다룰 것입니다. 국가 목록을 제공하는 콤보 상자 또는 테이블 구성 요소. 지금까지 모든 것이 구성 요소 자체에 캡슐화되었으며 백엔드에 대한 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.