function getObj() {
let obj = {
sex:"男",
age:18
};
let val = ""; //此处val是安全的,外部是无法修改的
let o = Object.defineProperty(obj, "key", {
configurable: true,
enumerable: true,
get: function () {
return val || 0;
},
set: function (n) {
val = n;
},
});
return o; //每个对象都是新的
}
let aa = getObj();
console.log(aa.sex); //返回性别
11-04
767
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountBlack.png)
08-08
384
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountBlack.png)
08-10
410
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountBlack.png)