JavaScript Object.freeze()

Definition och användning

Object.freeze() Metoden används för att förhindra alla ändringar av objekt.

I icke strikt läge:Object.freeze() Metoden misslyckas tyst.

I strikt läge:Object.freeze() Metoden kastar ett TypeError.

Frusade objekt är skrivskyddade. Det är inte tillåtet att ändra, lägga till eller ta bort egenskaper.

Kan användas Object.isFrozen() Metoder för att kontrollera om ett objekt är fruset.

Relaterade metoder:

Object.preventExtensions() Tillåt ändringar, men förhindra att lägga till egenskaper.

Object.seal() Tillåt ändringar, men förhindra tillägg och borttagning av egenskaper.

Object.freeze() Förhindra ändringar, tillägg och borttagning av egenskaper.

Object.isExtensible() Om objektet är utökningsbart, returneras true.

Object.isSealed() Om objektet är avstämnt, returneras true.

Object.isFrozen() Om objektet är fryst, returneras true.

Exempel

Exempel 1

"use strict"
// Skapa objekt
const person = {
  firstName: "Bill",
  lastName: "Gates",
  age: 50,
  eyeColor: "blue"
};
// Frysa objekt
Object.freeze(person);
// Detta kommer att kasta ett fel
person.age = 51;

Prova själv

Exempel 2

const fruits = ["Banana", "Orange", "Apple", "Mango"];
Object.freeze(fruits);
// Detta kommer att kasta ett fel:
fruits.push("Kiwi");

Prova själv

Syntax

Object.freeze(object)

Parameter

Parameter Beskrivning
object Obligatoriskt. Det objekt som ska frysas.

Returvärde

Typ Beskrivning
Object Frysta objekt.

Webbläsarstöd

Object.freeze() Det är en egenskap av ECMAScript5 (ES5).

Från och med juli 2013 stöder alla moderna webbläsare fullt ut ES5 (JavaScript 2009):

Chrome Edge Firefox Safari Opera
Chrome 23 IE/Edge 11 Firefox 21 Safari 6 Opera 15
September 2012 September 2012 April 2013 Juli 2012 Juli 2013