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); //返回性别