JavaScript Object.preventExtensions()

Δεφίναση και χρήση

Object.preventExtensions() Μέθοδος για να αποτρέψετε την προσθήκη νέων ιδιοτήτων στον αντικείμενο.

Μπορείτε να χρησιμοποιήσετε Object.isExtensible() Για να ελέγξετε αν ένα αντικείμενο είναι επεκτάσιμο.

Σχετικές μεθόδους:

Object.preventExtensions() Επιτρέπεται η τροποποίηση, αλλά αποτρέπεται η προσθήκη ιδιοτήτων.

Object.seal() Επιτρέπεται η τροποποίηση, αλλά αποτρέπεται η προσθήκη και η διαγραφή ιδιοτήτων.

Object.freeze() 阻止修改、添加和删除属性。

Object.isExtensible() 如果对象可扩展,则返回 true。

Object.isSealed() 如果对象是密封的,则返回 true。

Object.isFrozen() 如果对象被冻结,则返回 true。

实例

例子 1

// 创建对象
const person = {firstName: "Bill", lastName: "Gates"};
// 阻止扩展
Object.preventExtensions(person);
// 在严格模式下,这将抛出错误
person.nationality = "English";

亲自试一试

例子 2

// 创建数组
const fruits = ["Banana", "Orange", "Apple", "Mango"];
Object.preventExtensions(fruits);
// 在严格模式下,这将抛出错误:
fruits.push("Kiwi");

亲自试一试

语法

Object.preventExtensions(object)

参数

参数 描述
object 必需。要阻止扩展的对象。

返回值

类型 描述
Object 被修改后的对象。

浏览器支持

Object.preventExtensions() 是 ECMAScript5 (ES5) 的特性。

自 2013 年 7 月起,所有现代浏览器均完全支持 ES5(JavaScript 2009):

Chrome Edge Firefox Safari Opera
Chrome 23 IE/Edge 11 Firefox 21 Safari 6 Opera 15
2012 年 9 月 2012 年 9 月 2013 年 4 月 2012 年 7 月 2013 年 7 月