It's only JavaScript by accident - we originally would have Scheme in the browser except for trying to piggyback on Java's popularity
Alan Kay's version of OO was originally about immutability
Problematic things are mutation and side-effects
Our programs are going to change a lot. we're going to want to iterate. If adding new features causes bugs, that's a problem.
When you have lots of code with mutation and side effects, it breaks.
When you have code that is immutable, and type-checked it's easier to refactor.
Declaratively create user interfaces
Why FRP?
You could use all these libraries: ImmutableJS, React, Redux, RxJS, TypeScript
And then they are mixed together, and even if you do all of those things. You are just successfull at maintaining your own discipline without a helpful compiler and types!