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原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容