Functional programming in JavaScript is an antipattern
medium.com
medium.com
If you really want to do clojure(/script) no language but clojure will give you that experience. It doesn't make functional programming in javascript an anti-pattern just because it does not become clojure.
That's much like saying that you can't do functional programming in clojure because there are no monads and proper static type checking.
The functional/OO split in JS is basically whether to focus on the Scheme part and only use objects as hash tables, or whether to focus on the objects, methods and inheritance and avoid Schemey functions.
You don't need any libraries to do either. If it makes life easier to include a library (whether functional or OO or whatever) then include it; if it doesn't, then don't.
EDIT: ES2015 specs [1]: "Some of its major enhancements include modules, class declarations, lexical block scoping, iterators and generators, promises for asynchronous programming, destructuring patterns, and proper tail calls." (emphasis mine)
[1] http://www.ecma-international.org/ecma-262/6.0/ (introduction)
My draw to FP is to limit side-effects as much as possible. Personally I like to follow a message-oriented setup (stealing a play from Erlang's book) instead of shared variables. A useful lib I found on the client-side is postal.js but there are many other ways to do it.
Welcome to JS programming.