function User( properties ){
for( var i in properties ){
(function( which ){
var p = i;
which[ "get" + i ] = function(){
return properties[p];
};
which[ "set" + i ] = function(val){
properties[p] = val;
}
})(this);
}
}
var user = new User({
name : "Bob",
age : 44
});
console.log(user.name);
console.log(user.getname());
console.log(user.getage());
这是JS面向对象编程书上的一个例子,我想问问这个实际有用处吗? 虽然我对闭包什么的略知一点可是这里的 which this val 搞的我好晕 求牛人解释一下。。。
再问一个
Function.prototype.method = function(name, func){
this.prototype[name] = func;
return this;
};
所以name必须是个string? this.prototype[name]中的this 和 return this 分别指的是?
收到一只叮咚
相关分类