Die JavaScript Object.freeze () -Methode friert ein Objekt ein.
Ein eingefrorenes Objekt kann nicht mehr geändert werden. Das Einfrieren eines Objekts verhindert:
- Neue Eigenschaften werden dem Objekt nicht hinzugefügt.
 - Vorhandene Eigenschaften, die aus dem Objekt entfernt werden sollen.
 - Ändern der Aufzählbarkeit, Konfigurierbarkeit oder Beschreibbarkeit vorhandener Eigenschaften.
 - Ändern der Werte der vorhandenen Objekteigenschaften und des Prototyps.
 
Die Syntax der freeze()Methode lautet:
 Object.freeze(obj)
Die freeze()Methode ist eine statische Methode und wird unter Verwendung des ObjectKlassennamens aufgerufen .
freeze () Parameter
Die freeze()Methode umfasst:
- obj - Das Objekt zum Einfrieren.
 
Rückgabewert von freeze ()
- Das Objekt, das an die Funktion übergeben wurde.
 
Anmerkungen :
- Alle Versuche, Eigenschaftensätze von eingefrorenen Objekten hinzuzufügen oder daraus zu entfernen, schlagen entweder stillschweigend fehl oder werden ausgelöst 
TypeError(meistens im strengen Modus). - Mit versiegelten Objekten 
Object.seal()können die vorhandenen Eigenschaften geändert werden, währendObject.freeze()die vorhandenen Eigenschaften unveränderlich werden. 
Beispiel: Verwenden von 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 ))
Ausgabe
true true bar undefiniert
Hinweis : Object.freeze(obj)Gilt nur für die unmittelbaren Eigenschaften von obj. Wenn der Wert dieser Eigenschaften Objekte selbst sind, werden diese Objekte nicht eingefroren und können das Ziel von Operationen zum Hinzufügen, Entfernen oder Neuzuweisen von Eigenschaften sein.
Empfohlene Lektüre: JavaScript-Objektsiegel ()








