A key word in the paragraph above is "interpreted." This is an important distinction in programming languages. An interpreted language is one that does stuff by way of interacting with another program, such as a browser, that has a whole bunch of machine language instructions just hanging around ready to be directly executed. The interpreter will receive a wad of code and its job is to then piece together a bunch of ready-to-go commands to represent that code at a lower-level of abstraction (closer to the machine).
This is in contrast to what's known as a compiled language. Here, code is received by a compiler program instead of a browser or virtual machine and is converted into machine-level instructions. It's sort of the difference between cooking from scratch and cooking from a recipe kit.
That's a huge capability and is allowing for the usage of JS as a "full-stack" language, e.g. one that can be employed from client-side web applications running in a browser all the way back to the server, where it can be used to manage and interact with databases in a role similar to PHP. JS can even be used to build regular old desktop applications via libraries like JW.js, though this is relatively uncharted territory. The Spotify desktop app is often held up as an example of this capability.
Frameworks aren't necessarily evil. The basic idea is that a framework provides a bonus level of abstraction to a programming language. It may not extend the language's capabilities, but it will focus and standardize certain capabilities. jQuery, for example, takes the different elements of a webpage's structure (the document-object model or DOM) and allows them to be neatly packaged up into abstractions called objects, which can then be operated on using a standardized set of functions.
There's a language down there, but surrounding it is a buzzing cycle of new abstractions. The site ToDoMVC offers a comparison of some 64 different JS frameworks by way of a sample project (a ToDo list) implemented using each one. Judging by the thousand-something pull requests visible at the project's GitHub page, ToDoMVC is regularly besieged by requests to add still newer frameworks.
"How can we feel like craftsmen when we’re scrabbling in the dark with unfamiliar tech?"
Programmer/blogger Jimmy Breck-McKye writes that we've entered "a crisis of churn rate." "Programmers want to program," Breck-McKye laments, "they want to build things, and be masters of their craft. But how can we get anything done when we’re spending most of our time learning? How can we feel like craftsmen when we’re scrabbling in the dark with unfamiliar tech?"