What is JavaScript?
JavaScript is a programming language. It is the only programming language that is interpreted and executed directly in the web browser. JavaScript is supported in all web browsers. It is part of the three primary technologies that make World Wide Web content available: HTML, CSS, and JavaScript (JS).
JavaScript is defined by a standards organization called Ecma International, and that organization stewards the definition of the language and the efforts to keep it updated. In Ecma International standards, JavaScript is called ECMAScript, but in day-to-day usage the term JavaScript remains more popular. For our purposes in this book, the terms JavaScript and ECMAScript are synonymous.
JavaScript is a dynamic and scripted language. The dynamic aspect of the language means that variable datatypes are inferred by the JavaScript interpreter. The scripted aspect of the language refers to the fact that no binary files are created and stored (or "compiled" from the source code) in order to run JavaScript programs. There is never an "executable" created for a JavaScript application*.
JavaScript is also the official programming language supported in web browsers according to W3C specifications for how the World Wide Web should operate. There are no other programming languages that can be interpreted, by default, by all of the different web browsers. JavaScript is used across the web to bring websites to life and provide complex, engaging interactions to users.
Even as JavaScript remains important in web browsers, it has become ubiquitous everywhere. Through projects like node.js, JavaScript has been able to run anywhere. JavaScript powers website servers, tiny robots, flying drones, and everything in-between. JavaScript developers have proliferated and brought their tools to every corner of software development.
This ubiquity has made JavaScript a valuable tool for software development in general. The JavaScript community continues to grow by leaps and bounds, and JavaScript shows no signs of waning popularity.
* In modern JavaScript all sorts of capabilities have been developed beyond the conventional usage of the language. Although JavaScript will always be considered a scripting language, it's possible to create applications (such as Github's Atom editor) that run like regular, compiled applications.