Object.defineProperty
APIObject.defineProperty(obj, prop, descriptor)
- obj:[Object] 目标对象
- prop:[String] 需要定义或者修改的属性
- descriptor:[Object] 配置属性 {enumerable,configurable,writable, get,set,value }
enumerable:[Boolean] default:true,true 时 forin是否可枚举
configurable:[Boolean]
value:default:undefined.
writable:[Boolean] default:true
set:[Function] default:undefined
get:[Function] default:undefined
configurable
configurable:[Boolean] : default:true。是否能被删除或者修改
|
|
enumerable
enumerable:[Boolean] : default:true。是否能被枚举 forin,Object.keys
|
|
writable
为false时不能被重写
|
|
get/set
当使用了get/set方法,不允许使用writable和value这两个属性
|
|