ECMAScript 2015正式發布
Ecma國際 大會 宣布 正式批準 ECMA-262 第6版,亦即ECMAScript 2015(曾用名:ECMAScript 6、ES6)的語言規范。
JavaScript是 Brendan Eich 在1995年用10天的時間發明的,但是它經歷了20年的時間才逐漸吸收了在其它現代語言中所流行的一些特性。它并非你初學編程語言的最佳選擇,但是卻成就了一個非常好的思想:即在瀏覽器中使用的語言,因此JavaScript迅速地吸引了人們的眼球,并于第二年提交了標準化請求。1997年由Ecma發布了1.0版本,1998年的2.0版本只進行了小幅修改,1999年發布3.0版本,增加了一些新的特性。
自此以后的幾年中JavaScript便被冷落,直到Ajax作為瀏覽器中客戶端應用的解決方案一舉興起,改進JavaScript的工作才重整旗鼓,但是起初并非所有相關人員都完全贊同接下來的發展方向。直到2008年,ECMAScript技術委員會 TC39 就草案制定問題達成一致,決定先進行一次小規模迭代,亦即2009年發布的ECMAScript 5(ES5),隨后再進行一次更大規模的迭代,也就是這次所批準的ES6。
最新版本JavaScript的官方名稱是ECMAScript 2015,Ecma國際意在更頻繁地發布包含小規模增量更新的新版本,下一版本將于2016年發布,命名為ECMAScript 2016。從現在開始,新版本將按照ECMAScript+年份的形式發布。
ES6是繼ES5之后的一次主要改進,語言規范由ES5.1時代的245頁擴充至600頁。ES6增添了許多必要的特性,例如:模塊和類,以及一些實用特性,例如Maps、Sets、Promises、生成器(Generators)等。盡管ES6做了大量的更新,但是它依舊完全向后兼容以前的版本,標準化委員會決定避免由不兼容版本語言導致的“web體驗破碎”。結果是,所有老代碼都可以正常運行,整個過渡也顯得更為平滑,但隨之而來的問題是,開發者們抱怨了多年的老問題依然存在。
目前,沒有一款完全支持ES6的JavaScript代理(無論是瀏覽器環境還是服務器環境),所以熱衷于使用語言最新特性的開發者需要將ES6代碼轉譯為ES5代碼。等到主流瀏覽器完全實現ES6特性大概需要一年左右的時間,若想一睹各代理對于ES6特性的支持情況,我們推薦大家參考由 kangax 維護的 ECMAScript Compatibility Table 。
ECMAScript 2016的制定工作已經啟動,許多 草案 已被提交到委員會,包括以下這些:異步方法、定型對象、并行JavaScript、類修飾符以及observables。雖然委員會正在積極評估這些特性,但我們無法預知它們的未來,其中一些會加入到下一版規范,另一些會加入未來的其它規范,剩下的將最終被遺棄。 TC39進程 解釋了新特性從開始到最終被語言采用所經歷的各種階段。
JavaScript起初發展緩慢,但是最近正在飛速進化,JavaScript是持久的,未來有更大的發展空間。數以百萬計的開發者正受益其中,希望標準化組織會引導其走向社區樂于見到的康莊大道。
擴展閱讀: 《探索ES6:相關書籍介紹及作者采訪》 ,這篇文章回顧了Axel Rauschmayer近期撰寫的有關深度解析ES6新特性的書籍。
查看英文原文: ECMAScript 2015 Has Been Approved