数据属性和访问器属性

2020-08-07  本文已影响0人  为啥不能叫5毛
访问器属性 数据属性 定义
set 在读取属性时调用的函数,默认为undefined。
get 在写入属性时调用的函数,默认为undefined
Configurable Configurable 表示能否通过delete删除属性从而重新定义属性,能否修改属性特性,能否把属性修改为访问器属性。通过以上方式添加的对象属性,默认为true
Enumerable Enumerable 表示能否通过for-in 循环访问属性。通过以上方式添加的对象属性,默认为true
Writable 表示能否修改属性的值。通过以上方式添加的对象属性,默认为true
Value 包含这个属性的数据值,可读取写入。通过以上方式添加的对象属性,默认为undefined

通过Object.defineProperty来配置

Object.defineProperty(obj, prop, descriptor) 接收三个参数:

obj:属性所在的对象

prop:要访问的属性名

descriptor:描述符对象

描述符对象包含六个属性:configurable、enumerable、writable、value、get、set ,要修改属性的特性,必须使用Object.defineProperty()方法。

通过以上两种方式添加的对象属性,其布尔值特性默认值是true,通过Object.defineProperty来修改属性特性时,只设置需要修改的特性即可;而通过Object.defineProperty创建的属性,其布尔值特性默认值是false

上一篇 下一篇

猜你喜欢

热点阅读