Javascript Object.seal ()

JavaScript Object.seal () -menetelmä sinetöi annetun objektin.

seal()Menetelmä estää uusia ominaisuuksia lisätään objekti ja merkitsee kaikki olemassa olevat ominaisuudet kuin ei-konfiguroitavissa.

Menetelmän syntaksi seal()on:

 Object.seal(obj)

seal()Menetelmä, joka on staattinen menetelmä, kutsutaan käyttää Objectluokan nimi.

seal () Parametrit

seal()Menetelmä vie:

  • obj - sinetöitävä esine.

Palautusarvo sinetistä ()

  • Palauttaa sinetöidyn objektin.

Esimerkki: Tiivisteen () käyttäminen

 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

Tuotos

 (foo: 'bar1', arvo: 5) TypeError Ominaisuutta ei voida määritellä uudelleen: foo

Huomautuksia :

  • Oletusarvoisesti objektit ovat laajennettavissa (niihin voidaan lisätä uusia ominaisuuksia). Esineiden sulkeminen tekee esineiden ominaisuuksista kiinteitä ja muuttumattomia. Nykyisten ominaisuuksien arvoja voidaan silti muuttaa, kunhan ne ovat kirjoitettavissa.
  • Object.isSealed() voidaan tarkistaa, onko esine sinetöity vai ei.
  • Yritä muuntaa dataominaisuus Accessoriksi tai päinvastoin epäonnistuu äänettömästi tai heittää TypeError.

Suositeltava lukeminen: JavaScript Object isSealed ()

Mielenkiintoisia artikkeleita...