Metoda JavaScript Object.preventExtensions () zapobiega dodawaniu nowych właściwości do obiektu.
Składnia preventExtensions()
metody to:
Object.preventExtensions(obj)
preventExtensions()
Metoda jest metodą statyczną, nazywa się używając Object
nazwy klasy.
PrevExtensions () Parametry
preventExtensions()
Sposób odbywa się:
- obj - Obiekt, który powinien stać się nierozszerzalny.
Wartość zwracana z PreventExtensions ()
- Zwraca obiekt, którego nie można rozszerzać.
Uwagi:
- Ogólnie rzecz biorąc, właściwości obiektu nierozszerzalnego mogą nadal zostać usunięte.
- Próba dodania nowych właściwości do obiektu, który nie jest rozszerzalny, zakończy się niepowodzeniem, po cichu lub przez zgłoszenie
TypeError
w trybie ścisłym. - Wciąż można dodawać właściwości do prototypu obiektu, który nie jest rozszerzalny.
Przykład: Korzystanie z 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, ));
Wynik
true true false TypeError: Nie można zdefiniować właściwości newProp, obiekt nie jest rozszerzalny
Zalecana literatura : JavaScript Object.isExtensible ()