- ECMAScript 2015
- ECMAScript 2016
- ECMAScript 2017
- ECMAScript 2018
- ECMAScript 2019
What do they mean?
They are all referring to a standard, called ECMAScript.
- ActionScript (the Flash scripting language), which is losing popularity since Flash will be officially discontinued in 2020
Why this weird name?
Ecma International is a Swiss standards association who is in charge of defining international standards.
This press release by Netscape and Sun Microsystems (the maker of Java) might help figure out the name choice, which might include legal and branding issues by Microsoft which was in the committee, according to Wikipedia.
What is TC39
Every standard version proposal must go through various stages, which are explained here.
I found it puzzling why sometimes an ES version is referenced by edition number and sometimes by year, and I am confused by the year by chance being -1 on the number, which adds to the general confusion around JS/ES 😄
Before ES2015, ECMAScript specifications were commonly called by their edition. So ES5 is the official name for the ECMAScript specification update published in 2009.
Why does this happen? During the process that led to ES2015, the name was changed from ES6 to ES2015, but since this was done late, people still referenced it as ES6.
This table should clear things a bit:
|Edition||Official name||Date published|
So at the time of writing, ES2019 has been released, and ES.Next is ES2020