js继承

时间:15-05-31 栏目:Javascript, web前端 作者:zongyan86 评论:0 点击: 2,485 次

js常用的继承方式,主要有以下几种:

1.拷贝继承(通用)

属性继承:子类构造函数中调用 父类.call(this,属性)

方法继承:for in->extend()    参考jquery的extend方法

function extend(obj1,obj2){

  for(var attr in obj2){

     obj1[attr]=obj2[attr];

  }

}

2.类式继承(有new方式)

function Aaa(){   //父类
 this.name = [1,2,3];
}
Aaa.prototype.showName = function(){
alert( this.name );
};

function Bbb(){   //子类
Aaa.call(this);//属性继承
}

var F = function(){};              //特殊属性处理,如数组
F.prototype = Aaa.prototype; //特殊属性处理
Bbb.prototype = new F();
Bbb.prototype.constructor = Bbb; //修正指向问题

3.原型继承(无new方式)

function cloneObj(obj){
    var F = function(){};
    F.prototype = obj;
    return new F();
}

web前端开发  分享



声明: 本文由( zongyan86 )原创编译,转载请保留链接: js继承

关注我们