Forwarding you to

GitHub - rtfeldman/seamless-immutable: Immutable data structures for JavaScript which are backwards-compatible with normal JS Arrays and Objects.

This level of backwards compatibility requires ECMAScript 5 features like Object.defineProperty and Object.freeze to exist and work correctly, which limits the browsers that can use this library to the ones shown in the test results below. (tl;dr IE9+ )