跳至正文
返回博客

JS 常见 Api 介绍

介绍 Object.defineProperty 的属性描述符、默认值及访问器描述符与数据描述符的互斥关系。

更新于

Object.defineProperty

JS 对象中,可以为每个对象字段定义一段描述,可以理解为对于对象属性的行为进行操作,如:可读、可写、可枚举、可修改等。

字段支持的描述字段如下:

描述字段名 功能 默认值
configurable 是否支持修改描述字段(包括自身) false
enumerable 是否支持在迭代器中枚举此字段
如果配置为 false ,在 Object.keys 、 Object.values 、 for ... in 、 Object.assign 、 ... 等都获取不到
false
value 字段默认值 undefined
writable 是否允许修改属性值
设置为 false 时,在严格模式下对属性赋值会报错
false
get 字段 getter ,在获取值时触发 undefined
set 字段 setter ,在设置值时触发 undefined

set + get 不能与 value + writable 一同存在,功能重合了