JavaScript Versions - AkuCode
Let me introduce the term ECMAScript here. We have a complete guide dedicated to ECMAScript where you can dive into it more, but to start with, you just need to know that ECMAScript (also called ES) is the name of the JavaScript standard. JavaScript is an implementation of that standard. That’s why you’ll hear about ES6, ES2015, ES2016, ES2017, ES2018 and so on. For a very long time, the version of JavaScript that all browsers ran was ECMAScript 3. Version 4 was canceled due to feature creep (they were trying to add too many things at once), while ES5 was a huge version for JS.
ES2015, also called ES6, was huge as well. Since then, the ones in charge decided to release one version per year, to avoid having too much time idle between releases, and have a faster feedback loop. Currently, the latest approved JavaScript version is ES2017.
ECMAScript
ECMAScript is the standard upon which JavaScipt is based, and it’s often abbreviated to ES. Discovery everything about ECMAScript, and the last features added in ES6, 7, 8.
Whenever you read about JavaScript you’ll inevitably see one of these terms:
• ES3
• ES5
• ES6
• ES7
• ES8
• ES2015
• ES2016
• ES2017
• ES2018
• ECMAScript 2017
• ECMAScript 2016
• ECMAScript 2015
What do they mean?
They are all referring to a standard, called ECMAScript.
ECMAScript is the standard upon which JavaScript is baed, and it’s often abbreviated to ES.
Besides JavaScript, other language implements (ed) ECMAScript, including:
• ActionScript (the Flash scripting language), which is losing popularity since Flash will be officially discontinued in 2020
• Jscript (the Microsoft scripting dialect), since at the time JavaScript was supported only by Netscape and the browser wars were at their peak. Microsoft had to build its own version for Internet Explorer
but of course, JavaScript is the most popular and widely used implementation of ES.
Why this weird name? Ecma International is a Swiss standards association who is in charge of defining international standards. When JavaScript was created, it was presented by Netscape and Sun Microsystems to Ecma and they gave it the name ECMA-262 alias ECMAScript. 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
TC39 is the committee that evolves JavaScript. The members of TC29 are companies involved in JavaScript and browser vendors, including Mozilla, Google, Facebook, Apple, Microsoft, Intel, Paypal, SalesForce and others. Every standard version proposal must go through various stages, which are explained here.
ES Versions
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, and the community has not left the edition naming behind – the world is still calling ES releases by edition number.
ES2015, also called ES6, was huge as well. Since then, the ones in charge decided to release one version per year, to avoid having too much time idle between releases, and have a faster feedback loop. Currently, the latest approved JavaScript version is ES2017.
ECMAScript
ECMAScript is the standard upon which JavaScipt is based, and it’s often abbreviated to ES. Discovery everything about ECMAScript, and the last features added in ES6, 7, 8.
Whenever you read about JavaScript you’ll inevitably see one of these terms:
• ES3
• ES5
• ES6
• ES7
• ES8
• ES2015
• ES2016
• ES2017
• ES2018
• ECMAScript 2017
• ECMAScript 2016
• ECMAScript 2015
What do they mean?
They are all referring to a standard, called ECMAScript.
ECMAScript is the standard upon which JavaScript is baed, and it’s often abbreviated to ES.
Besides JavaScript, other language implements (ed) ECMAScript, including:
• ActionScript (the Flash scripting language), which is losing popularity since Flash will be officially discontinued in 2020
• Jscript (the Microsoft scripting dialect), since at the time JavaScript was supported only by Netscape and the browser wars were at their peak. Microsoft had to build its own version for Internet Explorer
but of course, JavaScript is the most popular and widely used implementation of ES.
Why this weird name? Ecma International is a Swiss standards association who is in charge of defining international standards. When JavaScript was created, it was presented by Netscape and Sun Microsystems to Ecma and they gave it the name ECMA-262 alias ECMAScript. 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.
After IE9, Microsoft stopped branding its ES support in a browser as JScript and started calling it JavaScript (at least, I could not find references to it anymore). So as of 201x, the only popular language supporting the ECMAScript spec is JavaScript.
Current ECMAScript Version
The current ECMAScript version is ES2017, AKA ES8. It was released in June 2017. When is the next version coming out? Historically JavaScript editions have been standardized during the summer, so we can expect ECMAScript 2019 (named ES2019 or ES10) to be released in summer 2019, but this is just speculation.
Current ECMAScript Version
The current ECMAScript version is ES2017, AKA ES8. It was released in June 2017. When is the next version coming out? Historically JavaScript editions have been standardized during the summer, so we can expect ECMAScript 2019 (named ES2019 or ES10) to be released in summer 2019, but this is just speculation.
What is TC39
TC39 is the committee that evolves JavaScript. The members of TC29 are companies involved in JavaScript and browser vendors, including Mozilla, Google, Facebook, Apple, Microsoft, Intel, Paypal, SalesForce and others. Every standard version proposal must go through various stages, which are explained here.
ES Versions
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, and the community has not left the edition naming behind – the world is still calling ES releases by edition number.
Edition
|
Official name
|
Date published
|
ES9
|
ES2018
|
June 2018
|
ES8
|
ES2017
|
June 2017
|
ES7
|
ES2016
|
June 2016
|
ES6
|
ES2015
|
June 2015
|
ES5.1
|
ES5.1
|
June 2011
|
ES5
|
ES5
|
December 2009
|
ES4
|
ES4
|
Abandoned
|
ES3
|
ES3
|
December 1999
|
ES2
|
ES2
|
June 1998
|
ES1
|
ES1
|
June 1997
|
ES Next
ES. Next is a name that always indicates the next version of JavaScript. So at the time of writing, ES9 has been released, and ES.Next is ES10
Comments