Metodas „JavaScript Object.preventExtensions ()“ neleidžia prie objekto pridėti naujų ypatybių.
preventExtensions()
Metodo sintaksė yra tokia:
Object.preventExtensions(obj)
preventExtensions()
Metodas, būdamas statinis metodas, vadinamas naudojant Object
klasės pavadinimą.
preventExtensions () parametrai
preventExtensions()
Metodas trunka:
- obj - objektas, kuris turėtų būti neišplečiamas.
Grąžinimo vertė iš „preventExtensions“ ()
- Grąžina objektą, kuris yra neišplečiamas.
Pastabos:
- Neplatinamojo objekto savybės apskritai gali būti ištrintos.
- Bandymas pridėti naujų ypatybių prie neišplečiamo objekto nepavyks tyliai arba permetant
TypeError
griežtu režimu. - Ypatybės vis tiek gali būti pridėtos prie neišplečiamo objekto prototipo.
Pavyzdys: prevExtensions () naudojimas
let obj = (); // by default, objects are extensible console.log(Object.isExtensible(obj)); // true let obj1 = Object.preventExtensions(obj); console.log(obj == obj1); // true -> Returns the same object console.log(Object.isExtensible(obj)); // false // TypeError: Cannot define property newProp, object is not extensible Object.defineProperty(obj, "newProp", ( value: 123456, ));
Rezultatas
true true false TypeError: Negalima apibrėžti ypatybės newProp, objektas neišplečiamas
Rekomenduojamas skaitymas: „ JavaScript Object.isExtensible“ ()