> var a = {}> Object.defineProperty(a, "b", {... value: 110}){}> a{}> a.b110> a.b = 555555> a.b110> var aa = {b: 1}undefined> Object.defineProperty(aa, "b", {... value: 119}){ b: 119 }> aa.b119> aa.b = 11> aa.b1为什么aa.b可更改,a.b不能?
1 回答
FFIVE
TA贡献1797条经验 获得超6个赞
属性描述符有三个属性分别是 configurable
enumerable
writable
,默认值均为 false
而使用对象字面量定义的属性描述符均为 true
,可以通过 Object.getOwnPropertyDescriptor(a, 'b')
及 Object.getOwnPropertyDescriptor(aa, 'b')
来获取两个属性的描述符。
添加回答
举报
0/150
提交
取消