动态产生函数
这两天在看John Resig写的精通javascript,这本书以前也看过一遍,限于当时的水平问题,很多地方没有看懂。这段时间又想把这本书再看一遍,结果收获不少。其中发现一个很有意思的写法:
function User(properties) {
for (var i in properties) { (function(which) {
var p = i;
which['get' + p] = function() {
return properties[p];
};
which['set' + p] = function(val) {
properties[p] = val;
}
})(this);
}
}
var my = new User({name:'zjh'});
//那个my这个实例就有getname和setname这两个方法了
alert(my.getname());
my.setname('sky')
alert(my.getname());
var my = new User({name:'zjh',age:18});
alert(my.getname());
my.setname('sky')
alert(my.getname());
alert(my.getage());
my.setage('20')
alert(my.getage());
浙公网安备 33010602011771号