您现在的位置是:课程教程文章

javascript组合继承是什么

2023-12-14 20:39课程教程文章 人已围观

1、说明

用原型链实现原型属性和方法的继承,借用构造函数技术实现实例属性的继承。

2、缺点

组合模式的缺点是使用子类制作实例对象时,其原型有两种相同的属性、方法。

3、实例

functionSuperType(name){
this.name=name;
this.colors=["red","blue","green"];
}
SuperType.prototype.sayName=function(){
alert(this.name);
};

functionSubType(name,age){
//继承属性
//第二次调用SuperType()
SuperType.call(this,name);
this.age=age;
}

//继承方法
//构建原型链
//第一次调用SuperType()
SubType.prototype=newSuperType();
//重写SubType.prototype的constructor属性,指向自己的构造函数SubType
SubType.prototype.constructor=SubType;
SubType.prototype.sayAge=function(){
alert(this.age);
};

varinstance1=newSubType("Nicholas",29);
instance1.colors.push("black");
alert(instance1.colors);//"red,blue,green,black"
instance1.sayName();//"Nicholas";
instance1.sayAge();//29

varinstance2=newSubType("Greg",27);
alert(instance2.colors);//"red,blue,green"
instance2.sayName();//"Greg";
instance2.sayAge();//27

以上就是javascript组合继承的介绍,希望对大家有所帮助。更多Javascript学习指路:Javascript

课程教程:javascript组合继承是什么

上一篇:javascript原型式继承如何理解

下一篇:没有了

站点信息

  • 文章统计篇文章