继承,在JS中通过原型链实现。如:
function Box(){
this.name="Lee";
} function Desk(){
this.age=100;
} //通过原型链继承,超类实例化的对象赋值给子类的原型
Desk.prototype=new Box();
var desk=new Desk();
alert(desk.name);
这样,Desk的原型得到了Box的实例对象+对象信息,形成了原型链。
继承遵循就近原则,子类继承父类就近的属性。如:
function Box(){
this.name="Lee";
}
//添加原型属性name
Box.prototype.name="Jack"; function Desk(){
this.age=100;
} Desk.prototype=new Box();
var desk=new Desk();
alert(desk.name); //实例里有,则返回;没有,则去原型链里找 //子类型从属于自己或它的超类型
alert(desk instanceof Desk); alert(desk instanceof Box);
关于采用对象冒充和原型链继承的组合,来解决构造方法传参和原型共享问题,以后再来进一步学习。