Неизменяемость объектов в javascript весьма эффективна, когда вы хотите с легкостью иметь несколько версий или разных состояний! Мы используем immutable на работе, когда решаем такие проблемы, как управление версиями документов, чтобы их можно было легко перенести между серверами, не нарушая ничего другого (поскольку это всего лишь JS). Были некоторые незначительные проблемы, но ничто из того, что я чувствую, не заставило бы меня выбрать другое. Это действительно очень эффективно решает нашу проблему - больше не нужно беспокоиться о переносе старых документов с одного экземпляра сервера / базы данных обратно в рабочую среду, поскольку теперь по умолчанию все остается согласованным во всех экземплярах!