const obj = {
name:'猴子',
age:'10',
info:{
skill:'72变',
sex:'male'
}
}
取值:触发 get () 方法
Object.defineProperty(obj,'name',{
enumerable:true, // 当前属性允许被循环
configurable:true, // 当前属性允许被配置
get(){
console.log('获取了 obj.name 的值')
return '铁扇'
},
set(newVal){
console.log('obj.name 被修改了',newVal)
}
})
console.log(obj.name)
修改值:触发 set () 方法
Object.defineProperty(obj,'name',{
enumerable:true, // 当前属性允许被循环
configurable:true, // 当前属性允许被配置
get(){
console.log('获取了 obj.name 的值')
return '铁扇'
},
set(newVal){
console.log('obj.name 被修改了',newVal)
}
})
obj.name = '行者孙'