📅  最后修改于: 2023-12-03 15:16:09.212000             🧑  作者: Mango
在 JavaScript 中, Object.seal()
是一个用于对象的方法,它允许你封闭一个对象,从而禁止向对象添加新属性,删除现有属性和更改属性的可配置性。
封闭一个对象意味着对象的属性不能被修改,也不能改变属性的属性描述符(比如可配置性、可枚举性和可写性)。然而,封闭对象内部属性的值是可以修改的。
Object.seal(obj)
obj
:需要封闭的对象。Object.seal()
方法返回被封闭的对象。
const person = {
name: "John",
age: 30
};
Object.seal(person);
person.name = "Jane"; // 更改属性的值是可以的
delete person.age; // 删除属性是不允许的
console.log(person); // 输出: { name: "Jane", age: 30 }
在上面的示例中,我们创建了一个名为 person
的对象,并使用 Object.seal()
方法封闭了该对象。虽然我们可以更改 person
对象的 name
属性的值,但无法删除 age
属性。
Object.seal()
会改变原始对象,而不是创建一个新对象。Object.isSealed(obj)
方法可以判断一个对象是否被封闭。Object.seal()
是 JavaScript 中一个用于封闭对象的方法。它限制了对象中属性的更改、删除和属性描述符的修改。当你希望对象的属性是固定的,以避免不小心修改时,你可以使用 Object.seal()
。