Object对象方法(十四)preventExtensions/isExtensible/seal/isSealed

135 阅读1分钟

javaScript Object对象方法preventExtensions/isExtensible/seal/isSealed

preventExtensions/isExtensible作用:其中preventExtensions用于使一个对象不可拓展,这里的不可拓展指的是不能增加新的属性,而isExtensible则用于判断该对象是否可被拓展

const obj1 = {};
Object.preventExtensions(obj1);
console.log(Object.isExtensible(obj1));
// false
obj1.age = 18;
console.log(obj1);
// {}

seal/isSealed作用:其中seal用于使一个对象密封掉,这里的密封指的是现有属性标记为不可配置,而isSealed则用于判断该对象是否被密封

const obj1 = {
  age: 18
};
Object.seal(obj1);
console.log(Object.isSealed(obj1));
// true
Object.defineProperty(obj1, 'age', {
  get() {
    return "aaa";
  }
}); //直接报错