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,通过迭代将对象的属性复制到类中或是原型中