属性类型:
[[Configurable]]
> 能否通过delete删除属性从而重新定义属性(默认:true)
[[Enumerable ]]
> 能否通过for-in循环返回属性(默认:true)
[[Writable]]
> 能否修改属性的值(默认:true)
[[Value]]
> 读取属性(默认:undefined)
访问器属性(不能直接定义)
[[configurable]]
[[enumerable]]
[[get]]读取属性
[[set]]写入属性
_ 是一种常用的记号,表示只能通过对象方法(get)访问属性
只指定get方法表示只读不写,反之一样
常用方法:
- defineProperty()创建或者修改属性
defineProperty(属性所在对象,属性名字,描述符对象)
可以使用此方法修改属性的默认值
1.使用此方法创建一个新的属性值,如果不指定,configuable/enumerable/writable都是false
2.修改已定义的属性值,则没有上述限制
- defineProperties()定义多个属性
defiProperties(添加和修改属性的对象,与第一个对象要添加或修改的属性一一对应)
- getOwnPropertyDesriptor()读取属性特征
使用此方法,configurable / enumerable / writable 默认是false