当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript Object.isSealed()用法及代码示例


JavaScript Object.isSealed() 方法检查对象是否被密封。

用法:

Object.isSealed(obj)

isSealed() 方法是静态方法,使用Object 类名调用。

isSealed()参数

isSealed() 方法包含:

  • obj - 应该检查的对象。

isSealed() 的返回值

  • Boolean 指示给定对象是否已密封。

注意:如果一个对象是不可扩展的,并且如果它的所有属性都是不可配置的,因此不可删除(但不一定是不可写的),那么它就是密封的。

示例:使用 isSealed()

// By default, objects are not sealed
let empty = {};
console.log(Object.isSealed(empty)); // false

// non-extensible empty objects are sealed
Object.preventExtensions(empty);
console.log(Object.isSealed(empty)); // true

// for non-empty objects, all properties have to be non-configurable
let obj = { value: "A B C" };
Object.preventExtensions(obj);
console.log(Object.isSealed(obj)); // false

// making all properties non-configurable
Object.defineProperty(obj, "value", { configurable: false });
console.log(Object.isSealed(obj)); // true

// Using seal()
let obj2 = { a: 1, b: 2, c: 3 };
Object.seal(obj2);
console.log(Object.isSealed(obj2)); // true

输出

false
true
false
true
true

根据定义,密封对象是不可扩展的,但它不必被冻结(不可写)。

相关用法


注:本文由纯净天空筛选整理自 Javascript Object.isSealed()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。