JavaScript Object.seal () -metoden forsegler det gitte objektet.
Den seal()
muliggjør å forhindre nye egenskaper fra å bli tilsatt til objektet og markerer alle eksisterende egenskaper som ikke-konfigurerbar.
Syntaksen til seal()
metoden er:
Object.seal(obj)
Den seal()
metoden, å være en statisk metode, kalles med Object
navn klassen.
tetning () Parametere
Den seal()
metoden tar i:
- obj - Objektet som skal forsegles.
Returverdi fra segl ()
- Returnerer gjenstanden som forsegles.
Eksempel: Bruke tetning ()
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
Produksjon
(foo: 'bar1', verdi: 5) TypeError Kan ikke omdefinere eiendom: foo
Merknader :
- Som standard er objekter utvidbare (nye egenskaper kan legges til dem). Forseglingen av objekter gjør at egenskaper på objekter er faste og uforanderlige. Verdiene til nåværende eiendommer kan fortsatt endres så lenge de er skrivbare.
Object.isSealed()
kan brukes til å sjekke om en gjenstand er forseglet eller ikke.- Forsøk på å konvertere dataegenskap til accessor eller omvendt vil mislykkes stille eller kaste
TypeError
.
Anbefalt lesing: JavaScript-objekt er forseglet ()