„JavaScript Object.freeze“ () metodas užšaldo objektą.
Užšalusio objekto nebegalima pakeisti. Užšaldžius objektą, išvengiama:
- Prie objekto pridedamos naujos savybės.
- Esamos savybės, kurias reikia pašalinti iš objekto.
- Esamų ypatybių skaičiavimo, konfigūravimo ar įrašomumo keitimas.
- Esamų objekto savybių ir prototipo reikšmių keitimas.
freeze()
Metodo sintaksė yra tokia:
Object.freeze(obj)
freeze()
Metodas, būdamas statinis metodas, vadinamas naudojant Object
klasės pavadinimą.
užšaldyti () parametrai
freeze()
Metodas trunka:
- obj - objektas sustingti.
Grąžinimo vertė užšaldžius ()
- Objektas, kuris buvo perduotas funkcijai.
Pastabos :
- Bet kokie bandymai pridėti ar pašalinti iš užšaldytų objektų rinkinių nepavyks tyliai arba išmesti
TypeError
(dažniausiai, kai naudojamas griežtas režimas). - Užplombuotų objektų
Object.seal()
esamos savybės gali būti pakeistos, oObject.freeze()
esamos savybės tampa nekintamos.
Pavyzdys: „freeze“ () naudojimas
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 ))
Rezultatas
tikroji tikroji juosta neapibrėžta
Pastaba : Object.freeze(obj)
taikoma tik artimiausioms obj
. Jei tų savybių vertė yra patys objektai, šie objektai nėra užšaldyti ir gali būti objektų pridėjimo, pašalinimo ar vertės perkėlimo operacijų taikinys.
Rekomenduojamas skaitymas: „ JavaScript“ objekto antspaudas ()