一、什麼是es6?node
ECMAScript 6.0(如下簡稱 ES6)是 JavaScript 語言的下一代標準,已經在 2015 年 6 月正式發佈了。git
目標:是使得 JavaScript 語言能夠用來編寫複雜的大型應用程序,成爲企業級開發語言。es6
二、ECMAScript 和 JavaScript 的關係是:github
前者是後者的規格,後者是前者的一種實現數組
三、ES6 與 ECMAScript 2015 的關係服務器
2011 年,ECMAScript 5.1 版發佈後,就開始制定 6.0 版了。所以,ES6 這個詞的原意,就是指 JavaScript 語言的下一個版本。babel
ES6 的第一個版本,就這樣在 2015 年 6 月發佈了,正式名稱就是《ECMAScript 2015 標準》(簡稱 ES2015)。2016 年 6 月,小幅修訂的《ECMAScript 2016 標準》(簡稱 ES2016)如期發佈,這個版本能夠看做是 ES6.1 版,由於二者的差別很是小(只新增了數組實例的includes
方法和指數運算符),基本上是同一個標準。根據計劃,2017 年 6 月發佈 ES2017 標準。編輯器
ES6 既是一個歷史名詞,也是一個泛指,含義是 5.1 版之後的 JavaScript 的下一代標準,涵蓋了 ES201五、ES201六、ES2017 等等,而 ES2015 則是正式名稱,特指該年發佈的正式版本的語言標準。google
四、Node 是 JavaScript 的服務器運行環境(runtime)。spa
五、Babel 轉碼器
Babel 是一個普遍使用的 ES6 轉碼器,能夠將 ES6 代碼轉爲 ES5 代碼,從而在現有環境執行。這意味着,你能夠用 ES6 的方式編寫程序,又不用擔憂現有環境是否支持。
實例:
1 // 轉碼前 2 input.map(item => item + 1); 3 4 // 轉碼後 5 input.map(function (item) { 6 return item + 1; 7 });
5.一、配置文件.babelrc
Babel 的配置文件是.babelrc
,存放在項目的根目錄下。使用 Babel 的第一步,就是配置這個文件。
該文件用來設置轉碼規則和插件,基本格式以下。
1 { 2 "presets": [], 3 "plugins": [] 4 }
具體參考官方提供的規則集來進行填入。
【MARK】命令行轉碼babel-cli、babel-node、babel-register、babel-core、babel-polyfill 等參見百度百科。
六、其餘轉碼器Traceur 轉碼器(Google 公司)
Babel提供的在線轉換編輯器爲REPL 在線編譯器
Goole提供的爲Traceur轉碼器