Il metodo JavaScript Object.preventExtensions () impedisce l'aggiunta di nuove proprietà a un oggetto.
La sintassi del preventExtensions()
metodo è:
Object.preventExtensions(obj)
Il preventExtensions()
metodo, essendo un metodo statico, viene chiamato utilizzando il Object
nome della classe.
PreventExtensions () Parametri
Il preventExtensions()
metodo comprende:
- obj - L'oggetto che dovrebbe essere reso non estensibile.
Valore restituito da preventExtensions ()
- Restituisce l'oggetto reso non estensibile.
Appunti:
- Le proprietà di un oggetto non estensibile, in generale, possono ancora essere eliminate.
- Il tentativo di aggiungere nuove proprietà a un oggetto non estensibile fallirà, silenziosamente o lanciando un
TypeError
in modalità rigorosa. - Le proprietà possono ancora essere aggiunte al prototipo dell'oggetto non estensibile.
Esempio: utilizzo di preventExtensions ()
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, ));
Produzione
true true false TypeError: Impossibile definire la proprietà newProp, l'oggetto non è estensibile
Letture consigliate: JavaScript Object.isExtensible ()