JavaScript Object.seal () -metoden forsegler det givne objekt.
De seal()
Fremgangsmåden forhindrer nye egenskaber i at blive tilsat til objektet og markerer alle de eksisterende egenskaber som ikke- indstillelig.
Metodens syntaks seal()
er:
Object.seal(obj)
Den seal()
metode, som er en statisk metode, der kaldes ved hjælp af Object
navnet klassen.
forsegling () Parametre
Den seal()
metode tager i:
- obj - Det objekt, der skal forsegles.
Returneringsværdi fra segl ()
- Returnerer genstanden, der forsegles.
Eksempel: Brug af segl ()
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ærdi: 5) TypeError Kan ikke omdefinere egenskab: foo
Bemærkninger :
- Objekter er som standard udvidelige (nye egenskaber kan føjes til dem). Forseglingen af genstande gør egenskaber på genstande faste og uforanderlige. Værdierne for nuværende egenskaber kan stadig ændres, så længe de er skrivbare.
Object.isSealed()
kan bruges til at kontrollere, om en genstand er forseglet eller ej.- Forsøg på at konvertere dataejendom til accessor eller omvendt mislykkes lydløst eller kaster
TypeError
.
Anbefalet læsning: JavaScript-objekt er forseglet ()