Ответы на вопросы на должность Frontend разработчика.
Изменяемый объект - это объект, состояние которого может быть изменено после его создания. Неизменяемый объект - это объект, состояние которого не может быть изменено после его создания.
В JavaScript:
Number
, String
, Boolean
, null
, undefined
Object
, Array
, Map
, Set
и т.д.)Неизменяемость может быть достигнута с помощью:
Object.freeze()
- предотвращает добавление новых свойств и изменение существующихObject.seal()
- предотвращает добавление новых свойств, но позволяет изменять существующие