Metoda JavaScript Object.freeze () zamrzne predmet.
Zamrznjenega predmeta ni več mogoče spremeniti. Zamrzovanje predmeta preprečuje:
- Dodajanje novih lastnosti v objekt.
- Obstoječe lastnosti, ki jih je treba odstraniti iz predmeta.
- Spreminjanje števila, nastavljivosti ali zapisljivosti obstoječih lastnosti.
- Spreminjanje vrednosti obstoječih lastnosti objekta in prototipa.
Sintaksa freeze()
metode je:
Object.freeze(obj)
freeze()
Način, da statično metodo, ki se imenuje z Object
imenom razreda.
freeze () Parametri
freeze()
Metoda je v:
- obj - predmet, ki ga je treba zamrzniti.
Vrnjena vrednost iz zamrznitve ()
- Predmet, ki je bil poslan funkciji.
Opombe :
- Vsi poskusi dodajanja ali odstranjevanja lastnosti nabora zamrznjenih predmetov ne bodo tiho ali zavrženi
TypeError
(večinoma v strogem načinu). - Predmeti, zapečateni s
Object.seal()
svojimi obstoječimi lastnostmi, se lahko spremenijo, medtem ko obstoječe lastnosti spremenijoObject.freeze()
.
Primer: Uporaba funkcije 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 ))
Izhod
true true bar nedefinirano
Opomba : Object.freeze(obj)
velja samo za neposredne lastnosti obj
. Če so vrednost teh lastnosti objekti sami, ti predmeti niso zamrznjeni in so lahko cilj operacij dodajanja, odstranjevanja ali prerazporeditve vrednosti.
Priporočeno branje: Pečat predmeta JavaScript ()