function A(){
this.abc = 12;
}
A.prototype.show = function(){
alert(this.abc)
}
//继承A的属性
function B(){
//this ->new B()
A.call(this) //重点是 call()这个函数
}
//继承A的方法
B.prototype = A.prototype ?
这样写其实是错的。因为这样其实是引用类型,指向的是同一个地址,比如:
B.prototype.hide = function(){
alert(456)
}
var objA = new A();
var objB = new B();
objA.hide() //456
为了解决这个问题也很简单
for(var i in A.prototype){
B.prototype[i] = A.prototype[i] //这样就完成了A的方法的继承,同时又可以添加自己的方法
}