Immutable.js offers a collection of Persistent Immutable data structures for JavaScript. Immutable data is unchangeable once created, which makes application development so much simpler. There’s no defensive copying, and you get advanced memoization and change detection techniques with simple logic. Persistent data gives you a mutative API, one that doesn’t update data in-place but always produces new and updated data.
The data structures that Immutable.js provides include List, Stack, Map...