Object.defineProprerty()简介和使用
注意:defineProperty方法直接用Object构造器调用,不被任何实例对象调用
基础语法
var obj = {}
var descriptor = {}
Object.defineProperty(obj,prop1,descriptor)
/*
obj: 要操作的对象
prop:对象的属性
descriptor:描述信息,对象数据类型
*/
- 被劫持的属性默认是不能修改的
- set 和 get 函数
var obj = {}
var propValue = 1
Object.defineProperty(obj,'prop1',{
/*
1.set和get函数 写在,描述里
2.访问属性属性时,执行get函数,通过get函数来的返回值来设置属性的值
3.修改属性时,将修改目标值value传给set函数,执行set函数
*/
get() {
return propValue
},
set(value) {
propValue = value
}
})