In no other language you can refactor so easy without any worries, since the compiler will guide you through. It is like TDD but than compiler-error driven.
The tooling isn't perfect yet, and the compiler sometimes doesn't catch it when modules change (this is version 0.17), but it's getting better quickly.
Lower-level constructs map better to higher-abstraction functional languages (e.g., Haskell), but for practical JavaScript programming, a higher-level set of operations maps more naturally to chained methods and it's less verbose and much easier to learn.