JavaScript History
- Previous Page JS IE / Edge
- Next Page JS Object Definition
JavaScript / ECMAScript
JavaScript is Brendan Eich It was invented in 1995.
It is for Netscape 2 developed and became ECMA-262 Standard.
After Netscape handed over JavaScript to ECMA, the Mozilla Foundation continued to develop JavaScript for the Firefox browser. The latest version of Mozilla is 1.8.5. (Same as ES5).
Internet Explorer (IE4) is the first browser to support ECMA-262 Edition 1 (ES1)
Year | ECMA | Browser |
---|---|---|
In 1995 | JavaScript was invented by Brendan Eich | |
In 1996 | Netscape 2 was released together with JavaScript 1.0 | |
In 1997 | JavaScript became an ECMA standard (ECMA-262) | |
In 1997 | ES1 | ECMAScript 1 was released |
In 1997 | ES1 | IE 4 is the first browser to support ES1 |
In 1998 | ES2 | ECMAScript 2 was released |
In 1998 | Netscape 4.2 was released together with JavaScript 1.3 | |
In 1999 | ES2 | IE 5 is the first browser to support ES2 |
In 1999 | ES3 | ECMAScript 3 was released |
In 2000 | ES3 | IE 5.5 is the first browser to support ES3 |
In 2000 | Netscape 6.2 was released together with JavaScript 1.5 | |
In 2000 | Firefox 1 was released together with JavaScript 1.5 | |
In 2008 | ES4 | ECMAScript 4 was abandoned |
In 2009 | ES5 | ECMAScript 5 is released |
2011 | ES5 | IE 9 is the first browser to support ES5 * |
2011 | ES5 was released with Firefox 4 and JavaScript 1.8.5 | |
2012 | ES5 | Safari 6 fully supports ES5 |
2012 | ES5 | IE 10 fully supports ES5 |
2012 | ES5 | Chrome 23 fully supports ES5 |
2013 | ES5 | Firefox 21 fully supports ES5 |
2013 | ES5 | Opera 15 fully supports ES5 |
2014 | ES5 | Fully support ES5 in all browsers |
2015 | ES6 | Release of ECMAScript 6 |
2016 | ES6 | Chrome 51 fully supports ES6 |
2016 | ES6 | Opera 38 fully supports ES6 |
2016 | ES6 | Edge 14 fully supports ES6 |
2016 | ES6 | Safari 10 fully supports ES6 |
2015 | ES6 | Fully support ES6 in Firefox 52 |
2018 | ES6 | Fully support ES6 in browsers |
*: Internet Explorer 9 does not support ES5 "use strict".
Ecma Technical Committee 39
In 1996, Netscape and Brendan Eich brought JavaScript to the Ecma International standard organization and established a technical committee (TC39) to develop the language.
The first version of ECMA-262 was released in June 1997.
From ES4 to ES6
When the TC39 committee met in Oslo in 2008 to reach an agreement on ECMAScript 4, they formed two completely different camps:
- ECMAScript 3.1 Camp:
- Microsoft and Yahoo hope to make an incremental upgrade from ES3.
- ECMAScript 4 Camp:
- Adobe, Mozilla, Opera, and Google, they want a large-scale ES4 upgrade.
On August 13, 2008, Brendan Eich wrote aEmail:
The Ecma International technical committee 39, the standard organization of JavaScript, has been split for more than a year, and this is no secret. Some members support ES4, which is the main fourth version of ECMA-262, while others support the third version (ES3) specification based on the existing ECMA-262 ES3.1. Now, I am glad to report that the split is over.
The solution is to work together:
- ECMAScript 4 was renamed to ES5
- ES5 should be an incremental upgrade from ECMAScript 3.
- The features of ECMAScript 4 should be adopted in future versions.
- TC39 should develop a new major version with a scope larger than ES5.
The planned new version (ES6) is codenamed "Harmony" (because it caused a split?).
ES5 has achieved great success. It was released in 2009, and by July 2013, all major browsers (including Internet Explorer) were fully compatible:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 23 | IE10 / Edge | Firefox 21 | Safari 6 | Opera 15 |
November 2012 | September 2012 | May 2013 | July 2012 | July 2013 |
ES6 has also achieved great success. It was released in 2015, and by March 2017, all major browsers were fully compatible:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 51 | Edge 14 | Firefox 52 | Safari 10 | Opera 38 |
May 2016 | August 2016 | March 2017 | September 2016 | June 2016 |
- Previous Page JS IE / Edge
- Next Page JS Object Definition