The original JS borrowed heavily from Scheme (lisp1 + everything evaluatable) and Self (prototype model of inheritance) and then was covered with a bunch of Java-like nonsense, which (IMO) just made things more complex.
There's been a nice functional language buried in JS all this time. It's still buried in there someplace.