在使用Object.defineProperty() 定义对象属性的时候,如果设置了 set 或 get, 就不能设置 writable 和 value 中的任何一个,否则就会报错如上图
let car={};
let temp="bwm";
// 如果设置了 set 或 get, 就不能设置 writable 和 value 中的任何一个,否则报错
Object.defineProperty(car,'brand',{
// writable:true,
// value:'bmw',
enumerable:true,
configurable:true,
get(){
console.log("brand属性值被读了哦~");
return temp;
},
set(val){
console.log("brand属性值被修改了哦~");
temp=val;
}
})