javascript给类添加的方法

     先写点题外话,前段时间一直在学习node.js,期间也有很多的心得体会,由于自己犯懒,没能及时的记录下来。最近的状态确实不太好,感觉自己有些懈怠

需要及时的调整一下,写下这段话也算是为了鞭策自己吧,以后要勤快点,学到了什么要及时记录。

    好了 ,言归正传吧,以前买过一本基于mvc的javascript富应用这本书 ,刚接触这本书的时候感觉一头雾水,今天重新拿出来拜读了一下第一章,有一些新的体会

怎么创建类就不说了,直接进入主题 ,如何给类添加方法,自己仿照书上写了一个小例子

   

function User(name,sex){
    var _this = this;
    this.name = name;
    this.sex =sex;


}

User.prototype.say = function(){
  console.log(this.name);
}

//添加到原型中
User.prototype.extend = function(obj){
    for(var i in obj){
      User.prototype[i] = obj[i];
    }
}

//添加到类中

User.include = function(obj){
    for(var i in obj){
      User.prototype[i] = obj[i];
    }
}


var u1 = new User('lile','nan');
u1.extend({
  find:function(){
    console.log(this.name);
  },

  look:function(){
    console.log('22');
  }

})
u1.say();
console.log(u1);
u1.find();

var u2 = new User('zsy','ss');
u2.say();

console.log(u2);
u2.find();

精华的部分为标红的这段,在原型或者类中添加一个extend,include方法,参数为一个object,通过迭代将对象的属性复制到类中或是原型中

原文地址:https://www.cnblogs.com/lilefordream/p/3116291.html