Встречается на собеседованиях • сегодня

Как свойство объекта сделать неизменяемым

В JavaScript можно сделать свойство объекта неизменяемым с помощью Object.defineProperty() или Object.freeze().

  1. Object.defineProperty() – позволяет задать дескрипторы свойства:
javascript
const obj = {};
Object.defineProperty(obj, 'key', {
  value: 'initial',
  writable: false, // запрет изменения значения
  configurable: false // запрет удаления и изменения дескрипторов
});
  1. Object.freeze() – делает весь объект неизменяемым:
javascript
const obj = { key: 'value' };
Object.freeze(obj); // все свойства становятся read-only

Важно:

  • В strict mode попытка изменить frozen свойство вызовет ошибку
  • Эти методы работают только на первом уровне вложенности (глубокую иммутабельность нужно реализовывать рекурсивно)
  • Для массивов тоже применяется Object.freeze()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы