I understand that there are sometimes practical reasons for not being able to use ClojureScript, but have you given it a go? It's really very, very nice (much nicer than JS in pretty much every way).
* Immutable data (you can get some of this in JS with Nolen's Mori http://swannodette.github.io/mori/)
* Better functional programming than Underscore (map :mykey some-objects)
* Great syntax: homoiconicity, thrush operator, first class set, regex, map, vector syntax
* Macros!
* Use of cool frameworks: Om, core.async
* Same language as back-end if using Clojure
It was quite frankly intimidating to get started with it all as an ex-Java/Obj-c/Python/JS dev but I could never go back.