configurable和enumerable和writable

这三个属性可以理解为一个对象属性的属性,在使用object.definePorperty时会用到

1.configurable
默认值为true 当设置为false 则理解为该属性不可删除不可修改

2.writable
默认值为true 当设置为false 则理解我改属性只读

3.enumerable
默认值为true 当设置为false 则理解为无法枚举 遍历属性时无法将该属性取出


configurable为false时,value、writable、enumerable和configurable都不能被修改了。
注意,writable只有在false改为true会报错,true改为false是允许的。
至于value,只要writable和configurable有一个为true,就允许改动。
另外,configurable为false时,直接目标属性赋值,不报错,但不会成功。

猜你喜欢

转载自blog.csdn.net/weixin_38987500/article/details/112602525