快速學習ES6新特性-簡介

  • 2020 年 2 月 14 日
  • 筆記

1、ES6 新特性

現在使用主流的前端框架中,如ReactJS、Vue.js、angularjs等,都會使用到ES6的新特性,作為一名高級工程師而 言,ES6也就成為了必修課,所以本套課程先以ES6的新特性開始。

說明:如果已經掌握ES6語法的同學,可以跳過這一節。

1.1、了解ES6

ES6,是ECMAScript 6的簡稱,它是 JavaScript 語言的下一代標準,己於 2015 年 6 月正式發 布。它的目標是使 JavaScript語言可以用於編寫複雜的大型應用程序,成為企業級開發語言。

1.1.1.什麼是ECMAScript?

來看下前端的發展歷程:

web1.0時代:

最初的網頁以HTML為主,是純靜態的網頁。網頁是只讀的,信息流只能從服務的到客戶端單向流通。開發人員也只關心頁面的樣式和內容即可。

web2.0時代:

  • 1995年,網景工程師Brendan Eich 花了10天時間設計了JavaScript語言。
  • 1996年,微軟發佈了JScript,其實是JavaScript的逆向工程實現。
  • 1997年,為了統一各種不同script腳本語言,ECMA(歐洲計算機製造商協會)以JavaScript為基礎,制定了ECMAscript 標準規範。JavaScript和JScript都是ECMAScript 的標準實現者,隨後各大瀏覽器廠商紛紛實現了ECMAScript 標準。

所以,ECMAScript是瀏覽器腳本語言的規範,而各種我們熟知的js語言,如JavaScript則是規範的具體實現。

1.1.2.ECMAScript的快速發展

而後,ECMAScript就進入了快速發展期。

  • 1998年6月,ECMAScript 2.0 發佈。
  • 1999年12月,ECMAScript 3.0 發佈。這時,ECMAScript 規範本身也相對比較完善和穩定了,但是接下來的事情,就比較悲劇了。
  • 2007年10月。。。。ECMAScript 4.0 草案發佈。 這次的新規範,歷時頗久,規範的新內容也有了很多爭議。在制定ES4的時候,是分成了兩個工作組同時工作的。
    • 一邊是以 Adobe, Mozilla, Opera 和 Google為主的 ECMAScript 4 工作組。一邊是以 Microsoft 和 Yahoo 為主的 ECMAScript 3.1 工作組。
    • ECMAScript 4 的很多主張比較激進,改動較大。而 ECMAScript 3.1 則主張小幅更新。最終經過 TC39 的會議,決定將一部分不那麼激進的改動保留發佈為 ECMAScript 3.1,而ES4的內容,則延續到了後來的ECMAScript5和6版本中
  • 2009年12月,ECMAScript 5 發佈。
  • 2011年6月,ECMAScript 5.1 發佈。
  • 2015年6月,ECMAScript 6,也就是 ECMAScript 2015 發佈了。 並且從 ECMAScript 6 開始,開始採用年號來做版本。即 ECMAScript 2015,就是ECMAScript6。
  • 2016年 6月,小幅修訂的《ECMAScript 2016標準》 (簡稱 ES2016)如期發佈, 這個版本可以看作是 ES6.1版, 因為兩者的差異非常小(只新增了數組實例的 includes 方法 和指數運算符),基本上可以認為是同 一個標準 。
  • 2017 年 6 月發佈了ES2017 標準。

因此, ES6 既是一個歷史名詞,也是一個泛指,含義是 5.1 版本以後的 JavaScript 的下一代 標準,涵蓋了 ES2015、ES2016、 ES2017 等,而 ES2015 則是正式名稱,特指當年發佈的正式 版本的語言標準 。