I would suggest ClojureScript since it's easier to pick up than Haskell, and there's a chance to use it in real world. I've been writing pages in ClojureScript for some months. There's already good answers on FP and JavaScript. I want to talk based on my view.
Programming is to control complexity. OOP told us a lot about model real world with objects and make them communicate with each other. However, there's more we can do. If you see programs in the the way of FP, you find that pure functions are great tools to control complexity and mutable states, IO, these things add to complexity. Then as we try to build larger apps, we may know more about which parts are reliable and which parts are complicated intrinsically. I think this thing helps a lot.