1. 解释
使用Object.defineProperty(对象,属性名,GetSet方法对象),可以为某个对象设置属性和属性值。
在为对象设置属性值和提取属性值的时候,都可以添加额外功能。
2. 代码示例
var obj = {
name:"Zhang"
};
var ageValue;
Object.defineProperty(obj,"age",{
get(){
console.log("正在获取age属性");
return ageValue;
},
set(value){
console.log("正在设置age属性");
ageValue = value;
}
});
console.log(obj.age);
obj.age = 100;
console.log(obj.age);
运行以上代码输出结果如下: