Javascript Object.seal ()

De JavaScript Object.seal () - methode verzegelt het opgegeven object.

De seal()methode voorkomt dat nieuwe eigenschappen aan het object worden toegevoegd en markeert alle bestaande eigenschappen als niet-configureerbaar.

De syntaxis van de seal()methode is:

 Object.seal(obj)

De seal()methode, die een statische methode is, wordt aangeroepen met behulp van de Objectklassenaam.

seal () Parameters

De seal()methode omvat:

  • obj - Het object dat moet worden verzegeld.

Retourwaarde van seal ()

  • Retourneert het object dat wordt verzegeld.

Voorbeeld: seal () gebruiken

 let obj = ( foo: "bar", func: function () (), ); // before sealing, properties can be added, modified, or removed obj.foo = "JavaScript"; obj.value = 5; delete obj.func; // sealing the object o = Object.seal(obj); // can still change property values obj.foo = "bar1"; // no other change // fails silently obj.foo1 = "bar"; delete obj.foo; console.log(obj); // ( foo: 'bar1', value: 5 ) // cannot convert data property to accessors or vice versa Object.defineProperty(obj, "foo", ( get: function () ( return "g"; ), )); // TypeError Cannot redefine property: foo

Uitvoer

 (foo: 'bar1', waarde: 5) TypeError Kan eigenschap niet opnieuw definiëren: foo

Opmerkingen :

  • Objecten zijn standaard uitbreidbaar (er kunnen nieuwe eigenschappen aan worden toegevoegd). Het verzegelen van objecten maakt eigenschappen van objecten vast en onveranderlijk. De waarden van huidige eigenschappen kunnen nog worden gewijzigd zolang ze schrijfbaar zijn.
  • Object.isSealed() kan worden gebruikt om te controleren of een object is verzegeld of niet.
  • Poging om gegevenseigenschap te converteren naar accessor of vice versa zal stil mislukken of gooien TypeError.

Aanbevolen literatuur: JavaScript-object isSealed ()

Interessante artikelen...