JavaScript Object.freeze ()

Методът JavaScript Object.freeze () замразява обект.

Замразеният обект вече не може да бъде променен. Замразяването на обект предотвратява:

  • Добавени са нови свойства към обекта.
  • Съществуващи свойства, които трябва да бъдат премахнати от обекта.
  • Промяна на изброеността, конфигурируемостта или записваемостта на съществуващите свойства.
  • Промяна на стойностите на съществуващите свойства на обекта и прототипа.

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

 Object.freeze(obj)

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

freeze () Параметри

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

  • obj - Обектът за замразяване.

Върната стойност от замразяване ()

  • Обектът, който е предаден на функцията.

Бележки :

  • Всички опити за добавяне или премахване от набор от свойства на замразени обекти ще се провалят безшумно или изхвърляне TypeError(най-вече в строг режим).
  • Обектите, запечатани с, Object.seal()могат да променят съществуващите си свойства, като същевременно Object.freeze()правят съществуващите свойства неизменни.

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

 let obj = ( prop: function () (), foo: "bar", ); let o = Object.freeze(obj); console.log(o == obj); // True -> Returns the same object console.log(Object.isFrozen(obj)); // true // changes will fail silently obj.foo = "bar1"; console.log(obj.foo); // bar // does not add silently obj.new_foo = "bar"; console.log(obj.new_foo); // undefined // Following will also throw error // Object.setPrototypeOf(obj, ( x: 20 ))

Изход

 true true бар undefined

Забележка : Object.freeze(obj)отнася се само за непосредствените свойства на obj. Ако стойността на тези свойства са самите обекти, тези обекти не са замразени и може да са обект на операции по добавяне, премахване или преназначаване на стойност.

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

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