深入淺出ES6(一):ES6是什么


歡迎來到ES6深入淺出!JavaScript的新版本離我們越來越近,我們將通過每周一節的系列課程一起探索ECMAScript 6新世界。ES6中包含了許多新的語言特性,它們將使JS變得更加強大,更富表現力。在接下來的幾周內,我們將一一深入了解它們。但在我們開始詳細學習之前,我認為十分有必要花幾分鍾講解一下ES6到底是什么,以及你可以從中學到什么!

ECMAScript發生了什么變化?

編程語言JavaScript是ECMAScript的實現和擴展,由ECMA(一個類似W3C的標准組織)參與進行標准化。ECMAScript定義了:

ECMAScript標准不定義HTML或CSS的相關功能,也不定義類似DOM(文檔對象模型)的Web API,這些都在獨立的標准中進行定義。ECMAScript涵蓋了各種環境中JS的使用場景,無論是瀏覽器環境還是類似node.js的非瀏覽器環境。

新標准

上周,ECMAScript語言規范第6版最終草案提請Ecma大會審查,這意味着什么呢?

這意味着在今年夏天,我們將迎來最新的JavaScript核心語言標准

這無疑是一則重磅新聞。早在2009年,上一版ES5剛剛發布,自那時起,ES標准委員會一直在緊鑼密鼓地籌備新的JS語言標准——ES6。

ES6是一次重大的版本升級,與此同時,由於ES6秉承着最大化兼容已有代碼的設計理念,你過去編寫的JS代碼將繼續正常運行。事實上,許多瀏覽器已經支持部分ES6特性,並將繼續努力實現其余特性。這意味着,在一些已經實現部分特性的瀏覽器中,你的JS代碼已經可以正常運行。如果到目前為止你尚未遇到任何兼容性問題,那么你很有可能將不會遇到這些問題,瀏覽器正飛速實現各種新特性。

版本號6

ECMAScript標准的歷史版本分別是1、2、3、5。

那么為什么沒有第4版?其實,在過去確實曾計划發布提出巨量新特性的第4版,但最終卻因想法太過激進而慘遭廢除(這一版標准中曾經有一個極其復雜的支持泛型和類型推斷的內建靜態類型系統)。

ES4飽受爭議,當標准委員會最終停止開發ES4時,其成員同意發布一個相對謙和的ES5版本,隨后繼續制定一些更具實質性的新特性。這一明確的協商協議最終命名為“Harmony”,因此,ES5規范中包含這樣兩句話:

ECMAScript是一門充滿活力的語言,並在不斷進化中。

未來版本的規范中將持續進行重要的技術改進。

這一聲明許下了一個未來的承諾。

兌現承諾

2009年發布的改進版本ES5,引入了Object.create()Object.defineProperty()getterssetters嚴格模式以及JSON對象。我已經使用過所有這些新特性,並且我非常喜歡ES5做出的改進。但事實上,這些改進並沒有深入影響我編寫JS代碼的方式,對我來說最大的革新大概就是新的數組方法:.map(). filter()這些。

但是,ES6並非如此!經過持續幾年的磨礪,它已成為JS有史以來最實質的升級,新的語言和庫特性就像無主之寶,等待有識之士的發掘。新的語言特性涵蓋范圍甚廣,小到受歡迎的語法糖,例如箭頭函數(arrow functions)和簡單的字符串插值(string interpolation),大到燒腦的新概念,例如代理(proxies)和生成器(generators)。

ES6將徹底改變你編寫JS代碼的方式!

這一系列旨在向你展示如何仔細審閱ES6提供給JavaScript程序員的這些新特性。

我們將從一個經典的“遺漏特性”說起,十年來我一直期待在JavaScript中看到的它。所以從現在起就加入我們吧,一起領略一下ES6迭代器(iterators)和新的for-of循環!

轉載:http://www.infoq.com/cn/articles/es6-in-depth-an-introduction


免責聲明!

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



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