JavaScript Names, Versions and History

Naming

  • JavaScript was created at Netscape and used to describe Netscape’s (or Mozilla’s) implementation of the language.

  • Netscape submitted the language for standardisation to ECMA - The European Computer Manufacturer’s Association. Because of trademark issues, it was stuck with the awkward name “ECMAScript”. In practise, the abbreviation “ES” refers to the language standard and its versions.

  • For most of 2010, version 5 of ECMAScript was supported by all browsers.

  • ES6 was released in 2015, adding major features such as class and module syntax. This changed JavaScript from a scripting language into a serious general-purpose language suitable for large-scale software engineering.

  • Since ES6, the versions have followed the yearly release cadence - ES2016, ES2017….ES2020.

The Runtime Environment

The Browser

  • The original host environment for JavaScript is the web browser, and this is the most common execution environment. It allows the JavaScript code running in the web browser to:

    • obtain input from the user’s mouse and keyboard

    • make HTTP requests

    • display output using HTML and CSS

The OS via Node

  • Since 2010, Node gives JavaScript access to the entire operating system, allowing JavaScript programs to

    • read and write files

    • send and receive data over the network

    • make and serve HTTP requests

  • Node is a popular choice for implementing web servers and a convenient tool for writing simple utility scripts as an alternative to shell scripts.