The same question could be asked regarding Assembly language. And while many people railed against the concept of higher level languages, they eventually lost that argument, just like the people who complained about the performance lost when using languages like Java and C# that don't compile to machine code but instead are compiled against a virtual machine (JVM or .NET Runtime, respectively).
Brendan Eich replied:
I said "JS is the x86 of the web" a couple of years ago [likely at JSConf], but I can't claim it's original. [Nick Thompson said it on Hacker News this year as well.]
The point is JS is about as low as we can go. But it also has higher-level facilities.
Shaver's right, assembly without a great macro processor is not good for programmers or safety. JS is. So the analogy needs some qualification or it becomes silly.
The mix of high-level functional programming and memory safety, with low-level facilities such as typed arrays and the forthcoming ES.next extension of typed arrays, binary data, make for a more powerful programming language than assembly, and of course memory safety is the first differentiator.