const o = {}
var bValue = 38;
Object.defineProperty(o, "b", {
get() {
return bValue;
},
set(newValue) {
bValue = newValue;
},
writable,
enumerable : true, //是否可以在 for...in 循環和 Object.keys() 中被枚舉
configurable : true //屬性是否可以被删除,以及除 value 和 writable 特性外的其他特性是否可以被修改。
})
console.log(o);
> Object { b: 38 }
setTimeout(() => {bValue = 1; console.log(o)},1000)
> Object { b: 1 }