Immutable update
Also written: immutable, immutability, replace instead of change
Making a new object or array with the change instead of editing the old one, for example `setCart([...cart, item])`. React re-renders only when state is a different value.