Immutable.js

As we have learned in this chapter, one of the main ideas in FP is minimizing the number of places in which state is mutated in our application. However, in JavaScript, objects are not immutable, which we can lead us to mutate the application's state by mistake. For example, we could try to sort an array using the following function:

function sort(arr: number[]) { 
    return arr.sort((a, b) => b - a); 
} 

The preceding function could lead to issues because the sort method mutates the original array. This example is a demonstration of what is known as an implicit mutation. We mutated the application's state, but we didn't do it explicitly. Immutable.js helps us to make all the mutations in our application explicit.

We can install ...

Get Learning TypeScript 2.x - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.