JavaScript 锁属性说明
示例
可以锁定属性的描述符,因此无法对其进行任何更改。仍然可以正常使用该属性,并从中分配和检索值,但是任何重新定义它的尝试都会引发异常。
的configurable所述属性描述符的属性用于禁止在所述描述符的任何进一步的修改。
var obj = {};
//将'foo'定义为只读并将其锁定
Object.defineProperty(obj, "foo", {
value: "original value",
writable: false,
configurable: false
});
Object.defineProperty(obj, "foo", {writable: true});将引发此错误:
TypeError:无法重新定义属性:foo
并且该属性将仍然是只读的。
obj.foo = "new value"; console.log(foo);
控制台输出
原始值