Javascript Object.seal ()

Методът JavaScript Object.seal () запечатва дадения обект.

На seal()предотвратява метод нови свойства от които са добавени към обекта и марки всички съществуващи свойства, които не са конфигурируеми.

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

 Object.seal(obj)

В seal()метода, който е статичен метод, се нарича използване на Objectимето клас.

Параметри на seal ()

В seal()метода се в:

  • obj - Обектът, който трябва да бъде запечатан.

Върната стойност от seal ()

  • Връща обекта, който е запечатан.

Пример: Използване на печат ()

 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() може да се използва за проверка дали даден обект е запечатан или не.
  • Опитът за преобразуване на свойството за данни в аксесоар или обратно ще се провали безшумно или ще се хвърли TypeError.

Препоръчително четене: Обектът на JavaScript е запечатан ()

Интересни статии...