Immutable data cannot be changed once created, leading to much simpler application development and enabling techniques from functional programming such as lazy evaluation. Immutable JS provides a lazy Sequence, allowing efficient chaining of sequence methods like map and filter without creating intermediate representations.
immutable provides Sequence, Range, Repeat, Map, OrderedMap, Set and a sparse Vector by using lazy sequences and hash maps tries. They achieve efficiency by using structural sharing and minimizing the need to copy or cache data.
Read more from the source: github.com