JavaScript Historie
- Forrige side JS IE / Edge
- Næste side JS-objektdefinisering
JavaScript / ECMAScript
JavaScript er Brendan Eich opfundet i 1995.
Det er til Netscape 2 udviklet og blev 1997 år ECMA-262 Standard.
Efter at Netscape har overdraget JavaScript til ECMA, fortsætter Mozilla Foundation med at udvikle JavaScript til Firefox browseren. Mozillas nyeste version er 1.8.5. (Sammenlign ES5).
Internet Explorer (IE4) er den første browser, der understøtter ECMA-262 Edition 1 (ES1).
År | ECMA | Browser |
---|---|---|
1995 år | JavaScript blev opfundet af Brendan Eich | |
1996 år | Netscape 2 udgives sammen med JavaScript 1.0 | |
1997 år | JavaScript bliver ECMA standard (ECMA-262) | |
1997 år | ES1 | ECMAScript 1 udgives |
1997 år | ES1 | IE 4 er den første browser, der understøtter ES1 |
1998 år | ES2 | ECMAScript 2 udgives |
1998 år | Netscape 42 udgives sammen med JavaScript 1.3 | |
1999 år | ES2 | IE 5 er den første browser, der understøtter ES2 |
1999 år | ES3 | ECMAScript 3 udgives |
2000 år | ES3 | IE 5.5 er den første browser, der understøtter ES3 |
2000 år | Netscape 62 udgives sammen med JavaScript 1.5 | |
2000 år | Firefox 1 udgives sammen med JavaScript 1.5 | |
2008 år | ES4 | ECMAScript 4 opgav |
2009 år | ES5 | ECMAScript 5 udgives |
2011 | ES5 | IE 9 er den første browser, der understøtter ES5 * |
2011 | ES5 blev udgivet sammen med Firefox 4 og JavaScript 1.8.5 | |
2012 | ES5 | Safari 6 understøtter fuldt ES5 |
2012 | ES5 | IE 10 understøtter fuldt ES5 |
2012 | ES5 | Chrome 23 understøtter fuldt ES5 |
2013 | ES5 | Firefox 21 understøtter fuldt ES5 |
2013 | ES5 | Opera 15 understøtter fuldt ES5 |
2014 | ES5 | Komplet understøttelse af ES5 i alle browsere |
2015 | ES6 | ECMAScript 6 udgivelse |
2016 | ES6 | Chrome 51 understøtter fuldt ES6 |
2016 | ES6 | Opera 38 understøtter fuldt ES6 |
2016 | ES6 | Edge 14 understøtter fuldt ES6 |
2016 | ES6 | Safari 10 understøtter fuldt ES6 |
2015 | ES6 | Komplet understøttelse af ES6 i Firefox 52 |
2018 | ES6 | Komplet understøttelse af ES6 i browsere |
*: Internet Explorer 9 understøtter ikke ES5 "use strict".
Ecma tekniske komité 39
I 1996 bragte Netscape og Brendan Eich JavaScript til Ecma International standardiseringsorganisation og oprettede en teknisk komité (TC39) til at udvikle sprog.
ECMA-262 første version blev udgivet i juni 1997.
Fra ES4 til ES6
Når TC39-komitéen i 2008 samledes i Oslo for at nå enighed om ECMAScript 4, delte de sig i to helt forskellige lejre:
- ECMAScript 3.1-lejr:
- Microsoft og Yahoo ønsker en incrementel opgradering fra ES3.
- ECMAScript 4-lejr:
- Adobe, Mozilla, Opera og Google ønsker en omfattende opgradering til ES4.
Den 13. august 2008 skrev Brendan Eich etE-mail:
JavaScript-standardorganisationen Ecma tekniske komité 39 har været splittet i over et år, og det er ikke længere et hemmelighed, at nogle medlemmer støtter ES4, som er den primære fjerde version af ECMA-262, mens andre medlemmer støtter den eksisterende ECMA-262 ES3.1 tredje version (ES3). Nu er jeg glad for at rapportere, at splittelsen er slut.
Løsningen er at arbejde sammen:
- ECMAScript 4 omdøbt til ES5
- ES5 bør være en incrementel opgradering af ECMAScript 3.
- Karakteristika for ECMAScript 4 bør blive taget i brug i fremtidige versioner.
- TC39 bør udvikle en ny hovedversion, med et større omfang end ES5.
Den planlagte nye version (ES6) har kodenavnet "Harmony" (fordi det har skabt splittelse?).
ES5 har opnået stor succes. Det blev lanceret i 2009, og alle de vigtigste browsere (inklusive Internet Explorer) var fuldt kompatible til juli 2013:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 23 | IE10 / Edge | Firefox 21 | Safari 6 | Opera 15 |
November 2012 | September 2012 | Maj 2013 | Juli 2012 | Juli 2013 |
ES6 har opnået stor succes. Det blev lanceret i 2015, og alle de vigtigste browsere var fuldt kompatible til marts 2017:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 51 | Edge 14 | Firefox 52 | Safari 10 | Opera 38 |
Maj 2016 | August 2016 | Marts 2017 | September 2016 | Juni 2016 |
- Forrige side JS IE / Edge
- Næste side JS-objektdefinisering