js继承

组合继承

分别继承超类自身的属性方法和超类原型的属性方法,这是属于数据类型与数据类型之间的继承.
缺点:会调用两次超类构造函数.一次是创建子类原型的时候,一次是在子类构造函数内部.

}
SuperType.prototype.sayName=function(){

alert(this.name);

}

function SubType(name,age){

//属性继承
SuperType.call(this,name);
this.age=age;

}

//方法继承
SubType.prototype=new SuperType();
SubType.prototype.construcor=SuperType;

SubType.prototype.sayAge=function(){
alert(this.age);
};

原型式继承

基于已有的对象创建新对象,意即将已有的对象赋值给新对象的原型.这是属于对象与对象之间的继承.

寄生式继承

寄生式继承式原型式继承的扩展,寄生式继承可以在返回对象前扩展这个对象(定义更多的属性方法),这和原型式继承一样,也是对象与对象之间的继承.
缺点:使用寄生式继承为对象添加函数,会由于不能做到函数的复用而降低效率.

var clone=object(original);
clone.sayHi=function(){
alert("hi");

};
return clone;

}

寄生组合式继承

寄生组合式继承是通过借用构造函数来继承属性,通过原型链的混成形式(组合继承和寄生式继承)来继承方法.这样以来,弥补了组合继承和寄生式继承单独存在的缺点。
寄生组合式继承是引用类型最理想的继承范式。

再次明确引用类型?

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...
win11本地账户怎么改名?win11很多操作都变了样,用户如果想要...