网上有很多关于javascript的继承给出了很多种方法
我是没看懂。这里就主要就 一下Object.create() 这种方式的继承和 原型链继承说一下
原型链继承。
Son.prototype = new Father();
function Parent(){
this.name="father";
this.that =this;
}
Parent.prototype.run = function(){
alert(this.name);
}
function Son(){
this.name= "son";
}
Son.prototype = new Parent();
var son = new Son();
alert(son.name);
son.run();
输出 father father 说明继承了父类的属性和原型方法。
function Parent(){
this.name="father";
this.that =this;
}
Parent.prototype.run = function(){
alert(this.name);
}
var son = Object.create(Parent.prototype);
son.name="son";
alert(son.name);
son.run();
输出都是 son son 说明,只是能调用父类原型链方法。但是this指向是当前的子类对象。所以访问属性也是子类。父类不能访问。