//创建一个新的用户对象,接受一个有许多属性的对象作为参数
function User(properties)
{
for(var i in properties){(function(which){
var p=i;
//创建此属性的一个新的读取器(getter)
which["get"+p] = function(){
return properties[p];
};
//创建此属性的一个新的设置器(setter)
which["set"+p] = function(val){
properties[p] = val;
};
})(this);
}
}
//创建一个新的用户对性实例,并把具有两个属性的一个对象传入作为种子
var user = new User({
name:"Bob";
age:44;
));
//注意name属性并不存在
//因为它是属性对象(properties object)的私有变量
alert(user.name == null);
//不过我们可以使用新的getname()方法来获得这个值
//因为此函数是动态生成的
alert(user.getname() =="Bob");
//最后,我们看到能够使用这个心生成的函数来设置或获得年龄
user.setage(22);
alert(user.getage()==22);
关于私有对象
最新推荐文章于 2022-07-19 21:00:00 发布