javascript 组合模式,对象冒充+原形链继承

//使用对象冒充来继承,只能继承构造对象中的信息
//原形中的无法继承构造对象中的方法每次实例化都会分配空间
//造成空间浪费

function Box(name,age){
this.name=name;
this.age=age;
this.run=function(){
return this.name+this.age+"运行中..."
}
}
Box.prototype.family='加';
function Desk(name,age){
Box.call(this,name,age);

}
var desk=new Desk('lee',100);
alert(desk.run());

//原形链+构造函数的模式,叫做组合模式

function Box(name,age){
this.name=name;
this.age=age;

}
Box.prototype.run=function(){
return this.name+this.age+"运行中.."
}


function Desk(name,age){
Box.call(this,name,age); //对象冒充

}
Desk.prototype=new Box(); //原形链继承
var desk=new Desk('lee',100);
alert(desk.run());

原文地址:https://www.cnblogs.com/tjwrth-juglans/p/7511828.html