🦄 Object.preventExtensions()
Для управления возможностью изменения объектов в JavaScript есть несколько интересных методов. Они позволяют нам ограничить добавление, изменение или удаление свойств объекта.
Рассмотрим первый метод Object.preventExtensions(obj)
Этот метод запрещает добавление новых свойств в объект obj, но при этом не запрещает изменение или удаление существующих свойств.
⁉️ Что можно делать после Object.preventExtensions(obj)? ✅ Изменять значения существующих свойств ✅ Удалять существующие свойства ❌ Добавлять новые свойства
Пример: `const obj = { name: "Alice" }; Object.preventExtensions(obj);
obj.age = 25; // Ошибка в строгом режиме, иначе игнорируется delete obj.name; // Удалится obj.name = "Bob"; // Можно изменить console.log(obj); // {}
❓Когда использовать?
-
Когда объект уже сформирован, но возможны изменения существующих данных.
-
Например, для хранения конфигурации с возможностью редактирования, но без добавления новых параметров
🔥 В след посте рассмотрим метод seal()`