ECMAScript各版本簡介及特性


 

ECMAScript 2019   ES10 草案 2019/02/21

ECMAScript 2018    es9         2018年 6 月底

ECMAScript2017    es8      2017在7月12日

ECMAScript2016    es7     2016年6月19日發布   

ECMAScript 2015         es6         2015年6月17日發布   

 

 es10

ES10在新語言功能方面沒有ES6那么重要,但它確實添加了一些有趣的東西(其中一些在目前版本的瀏覽器中還不起作用:02/20/2019)

 在 ES6 中,箭頭函數無疑是最受歡迎的新特性,在 ES10 中會是什么呢?

  • String .matchAll()
  • Dynamic import()
  • Array .flat() .flatMap()
  • Object .fromEntries()
  • String .trimStart() .trimEnd()
  • well-formed JSON.stringify()
  • stable Array .sort()
  • new Function .toString()
  • Standardized globalThis object

BigInt:任意精度整數

BigInt 是第七種 原始類型。


作者:Fundebug
鏈接:http://www.imooc.com/article/280361
來源:慕課網

es9

ECMAScript 2018(第九版 JS)已於 6 月底正式發布,帶來了許多新特性。

ECMAScript 2018 於今年2月出爐草案,TC39 技術委員會每兩個月開會一次,討論當前草案的現狀。ECMAScript 2018 主要包含內容:

ECMAScript 2018 規范 PDF 地址:

https://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf

 

es8

 

Ecma 國際公布了第八版的 ECMAScript 語言規范 ECMAScript 2017(或 ES8)。

ECMAScript 是標准化的 JavaScript 語言,1997 年發布了第一版,1998 年和 1999 年發布了第二和第三個版本,之后沉寂 了許多年,直到 Ajax 流行起來后標准工作才再次起步,2009 年發布了第五個版本,自 2015 年起每年發布一個版本。

ECMAScript 2017 的主要變化包括:Object.values/Object.entries、字符串填充、Object.getOwnPropertyDescriptor、尾隨逗號、異步函數、共享內存和原子,等。

 

 

es7

官網

ECMA 國際批准了第七版的 ECMAScript 語言規范(ECMAScript 2016)。

ECMAScript 是標准化的 JavaScript 語言,1997年發布了第一版,1998年和1999年發布了第二和第三個版本。

之后 ECMAScript 沉寂 了許多年,直到 Ajax 流行起來后標准工作才再次起步。2009年發布了第五個版本,2015年發布了第六個版本。

第七個版本又被稱為 ECMAScript 2016,與第六個版本相比變化並不多,主要是增加了兩個新特性:Array.prototype.include和取冪運算符。

ECMAScript現在每年發布一個新版規范,ECMAScript 2017已在制定之中。

 

 

es6

2015年6月17日發布。截止發布日期,JavaScript的官方名稱是ECMAScript 2015,Ecma國際意在更頻繁地發布包含小規模增量更新的新版本,下一版本將於2016年發布,命名為ECMAScript 2016。從現在開始,新版本將按照ECMAScript+年份的形式發布。
S6是繼ES5之后的一次主要改進,語言規范由ES5.1時代的245頁擴充至600頁。ES6增添了許多必要的特性,例如:模塊和類以及一些實用特性,例如Maps、Sets、Promises、生成器(Generators)等。
盡管ES6做了大量的更新,但是它依舊完全向后兼容以前的版本,標准化委員會決定避免由不兼容版本語言導致的“web體驗破碎”。結果是,所有老代碼都可以正常運行,整個過渡也顯得更為平滑,但隨之而來的問題是,開發者們抱怨了多年的老問題依然存在。

 

 

///////////////

 

ECMAScript

Sun(現在的Oracle)公司持有着“Java”和“JavaScript”的商標。這就讓微軟不得不把自己的JavaScript方言稱之為“JScript”。

然后,在這門語言被標准化的時候,就必須使用一個與二者都不同的名字。“ECMAScript”就這樣誕生了,這個名字的來由是因為執行標准化的組織是Ecma國際

通常來說,術語“ECMAScript”和“JavaScript”指的是同一個東西。

但如果把JavaScript看成是“Mozilla或其他組織的ECMAScript實現”,那么ECMAScript就是實現JavaScript所依據的標准。

ECMA-262

Ecma國際 (一個標准化組織)創建了ECMA-262規范,這個規范就是ECMAScript語言的官方標准

Ecma第39號技術委員會 (TC39)

是一組開發ECMA-262標准規范的人(Brendan Eich和其他一些人)。

ECMA規范最終由TC39敲定。TC39由包括瀏覽器廠商在內的各方組成,他們開會推動JavaScript提案沿着一條嚴格的發展道路前進。

從提案到入選ECMA規范主要有以下幾個階段:

  • Stage 0: strawman——最初想法的提交。
  • Stage 1: proposal(提案)——由TC39至少一名成員倡導的正式提案文件,該文件包括API事例。
  • Stage 2: draft(草案)——功能規范的初始版本,該版本包含功能規范的兩個實驗實現。
  • Stage 3: candidate(候選)——提案規范通過審查並從廠商那里收集反饋
  • Stage 4: finished(完成)——提案准備加入ECMAScript,但是到瀏覽器或者Nodejs中可能需要更長的時間。

 

參考

在 ES6 中,箭頭函數無疑是最受歡迎的新特性,在 ES10 中會是什么呢?

  • String .matchAll()
  • Dynamic import()
  • Array .flat() .flatMap()
  • Object .fromEntries()
  • String .trimStart() .trimEnd()
  • well-formed JSON.stringify()
  • stable Array .sort()
  • new Function .toString()
  • Standardized globalThis object

BigInt:任意精度整數

BigInt 是第七種 原始類型。


作者:Fundebug
鏈接:http://www.imooc.com/article/280361
來源:慕課網


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM