JavaScript Object.seal () -metoden förseglar det angivna objektet.
De seal()
metod förhindrar nya egenskaper från läggs till objektet och markeringar alla befintliga egenskaper som icke-konfigurerbara.
Syntaxen för seal()
metoden är:
Object.seal(obj)
Den seal()
metod, som är en statisk metod, kallas med hjälp av Object
klassnamnet.
tätning () Parametrar
Den seal()
metod tar in:
- obj - Föremålet som ska förseglas.
Returvärde från tätning ()
- Returnerar objektet som förseglas.
Exempel: Använda sigill ()
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
Produktion
(foo: 'bar1', värde: 5) TypeError Kan inte omdefiniera egenskap: foo
Anmärkningar :
- Som standard är objekt förlängningsbara (nya egenskaper kan läggas till dem). Förseglingen av föremål gör egenskaper på föremål fixerade och oföränderliga. Värdena för nuvarande egenskaper kan ändras så länge de är skrivbara.
Object.isSealed()
kan användas för att kontrollera om ett föremål är förseglat eller inte.- Försök att konvertera dataegenskap till accessor eller vice versa misslyckas tyst eller kastar
TypeError
.
Rekommenderad läsning: JavaScript-objekt är förseglat ()