📌  相关文章
📜  JavaScript TypeError – 无法定义属性“X”:“Obj”不可扩展

📅  最后修改于: 2022-05-13 01:56:37.915000             🧑  作者: Mango

JavaScript TypeError – 无法定义属性“X”:“Obj”不可扩展

此 JavaScript 异常无法定义属性“x”:当在对象上使用Object.preventExtensions()使其不再可扩展时,会发生“obj”不可扩展,因此现在,无法向对象添加新属性。

信息:

TypeError: Cannot create property for a non-extensible object (Edge)
TypeError: can't define property "x": "obj" is not extensible (Firefox)
TypeError: Cannot define property: "x", object is not extensible. (Chrome)

错误类型:

TypeError

错误原因:在对象上应用 Object.preventExtensions() 方法后,向对象添加了新属性,这是不允许的。

示例 1:在此示例中,在应用Object.preventExtensions()方法之后添加了新属性,因此发生了错误。

HTML


HTML


输出(在控制台中):

TypeError: Cannot create property for a non-extensible object

示例 2:在此示例中,在应用Object.preventExtensions() 方法之后使用 defineProperty()方法添加了新属性,因此发生了错误。

HTML


输出(在控制台中):

TypeError: Cannot define property 'person': object is not extensible