Javascript Object.seal ()

Метод JavaScript Object.seal () запечатує даний об’єкт.

У seal()методі запобігає нові властивості від бути додані до об'єкта і відзначають всі існуючі властивості , що не-настроюються.

Синтаксис seal()методу:

 Object.seal(obj)

seal()Метод, який є статичний метод, викликаються з допомогою Objectімені класу.

параметри seal ()

seal()Метод приймає в:

  • obj - Об'єкт, який слід опечатати.

Повернене значення з ущільнення ()

  • Повертає об'єкт, що пломбується.

Приклад: Використання ущільнення ()

 let obj = ( foo: "bar", func: function () (), ); // before sealing, properties can be added, modified, or removed obj.foo = "JavaScript"; obj.value = 5; delete obj.func; // sealing the object o = Object.seal(obj); // can still change property values obj.foo = "bar1"; // no other change // fails silently obj.foo1 = "bar"; delete obj.foo; console.log(obj); // ( foo: 'bar1', value: 5 ) // cannot convert data property to accessors or vice versa Object.defineProperty(obj, "foo", ( get: function () ( return "g"; ), )); // TypeError Cannot redefine property: foo

Вихідні дані

 (foo: 'bar1', значення: 5) TypeError Не вдається перевизначити властивість: foo

Примітки :

  • За замовчуванням об’єкти розширювані (до них можна додавати нові властивості). Запечатування предметів робить властивості об’єктів фіксованими та незмінними. Значення поточних властивостей все ще можна змінювати, доки їх можна записувати.
  • Object.isSealed() може використовуватися для перевірки запечатаності об’єкта чи ні.
  • Спроба перетворити властивість даних на Accessor або навпаки не вдасться мовчки або викинеться TypeError.

Рекомендуємо прочитати: Об’єкт JavaScript isSeated ()

Цікаві статті...