Sun(如今的Oracle)公司持有着「Java」和「JavaScript」的商標。這就讓微軟不得不把本身的JavaScript方言稱之爲「JScript」。而後,在這門語言被標準化的時候,就必須使用一個與兩者都不一樣的名字。「ECMAScript」就這樣誕生了,這個名字的來由是由於執行標準化的組織是Ecma國際。一般來講,術語「ECMAScript」和「JavaScript」指的是同一個東西。但若是把JavaScript當作是「Mozilla或其餘組織的ECMAScript實現」,那麼ECMAScript就是實現JavaScript所依據的標準。javascript
Ecma國際 (一個標準化組織)建立了ECMA-262規範,這個規範就是ECMAScript語言的官方標準。java
是一組開發ECMA-262標準規範的人(Brendan Eich和其餘一些人)。web
1997年6月發佈,本質上與javascript 1.1 相同——只不過只不過刪除了全部針對瀏覽器的代碼並做了一些較小的改動:ECMAScript要求支持Unicode標準,並且對象也變成了平臺無關的。正則表達式
1998年6月發佈,主要是編輯加工的結果。這一版的內容更新是爲了與ISO/IEC-16262保持嚴格一致,沒有做任何新增、修改或刪節處理。所以,通常不使用第2版來衡量ECMAScript實現的兼容性。編程
1999年12月發佈,是對ECMAScript標準第一次真正的修改。新增了對正則表達式、新控制語句、try-catch異常處理的支持,修改了字符處理、錯誤定義和數值輸出等內容。
從各方面綜合來看,第3版標誌着ECMAScript成爲了一門真正的編程語言。數組
於2008年7月發佈前被廢棄……命運坎坷瀏覽器
2009年12月發佈,該版本力求澄清第3版中的歧義,並添加了新的功能。新功能包括:原生JSON對象、繼承的方法、高級屬性的定義以及引入嚴格模式。編程語言
2015年6月17日發佈。截止發佈日期,JavaScript的官方名稱是ECMAScript 2015,Ecma國際意在更頻繁地發佈包含小規模增量更新的新版本,下一版本將於2016年發佈,命名爲ECMAScript 2016。從如今開始,新版本將按照ECMAScript+年份的形式發佈。
S6是繼ES5以後的一次主要改進,語言規範由ES5.1時代的245頁擴充至600頁。ES6增添了許多必要的特性,例如:模塊和類以及一些實用特性,例如Maps、Sets、Promises、生成器(Generators)等。
儘管ES6作了大量的更新,可是它依舊徹底向後兼容之前的版本,標準化委員會決定避免由不兼容版本語言致使的「web體驗破碎」。結果是,全部老代碼均可以正常運行,整個過渡也顯得更爲平滑,但隨之而來的問題是,開發者們抱怨了多年的老問題依然存在。code
2016年6月小幅修訂的《ECMAScript 2016標準》(簡稱 ES2016)如期發佈(只新增了數組實例的includes方法和指數運算符)對象
還未發佈正式版本。