JavaScript中的承继

JavaScript中的继承1.对象冒充????? 对象冒充指的是在子类中使用子类的this冒充父类的this去执行父类的构

JavaScript中的继承

1.对象冒充

????? 对象冒充指的是在子类中使用子类的this冒充父类的this去执行父类的构造函数,从而获得了父类的属性和方法,但是这种方式只能继承父类构造函数中定义的属性和方法,原型上的任何属性和方法对子类都不可见:

//使用寄生组合式继承//用于复制父类的原型的函数function copyPrototype(proto){function Temp(){};Temp.prototype = proto;return new Temp();}function SuperType(){//属性保存在构造函数内this.prop = ["property"];}//方法保存在原型上SuperType.prototype.method = function(){return "method";};function SubType(){SuperType.apply(this);}//构造原型链var subProto = copyPrototype(SuperType.prototype);subProto.constructor = SubType;SubType.prototype = subProto;var sub = new SubType();alert(sub.prop);//property,继承父类属性alert(sub.method());//method,继承父类方法

?

?