defineProperty可以用来给data添加属性,里边包含了getter和setter,有较重要的用途
let Person = {
name:'张三',
sex:'男',
}
Object.defineProperty(Person,'age',{
value:18,
enumerable :false,//控制属性是否可以枚举
writable:true,//控制属性是否可以被修改
configurable:true//控制是否可以被删除
//当有人读取age属性时调用
get(){
return number
},
//当有人修改age时,且收到值
set(value){
number = value;
}
})