Most of the features people like in Javascript can be faked in some manner in Java. Anonymous objects can be used to insert anonymous functions into Java code... At great cost in verbosity. Variables never really escape Java "closures" but the resulting immutability leads to a functional programming style that has real benefits.
Javascript's real advantage is a clearer syntax that's easier to learn and easier to read. If statically typed languages value concision, we can get the benefits of static types with little cost.