ES6 ,Stage0 和 ES2017 都是啥意思捏?
2017年2月9日

Javascript 是1995年诞生的,底层的标准叫做 ECMAScript ,简称 ES 。目前我们广泛使用的” ES6 标准的 Javascript “,我们就把它简称为 ES6 。

ES 是一个不断迭代中的标准,一个功能是否会最终进入 ES 标准,要经历四个阶段( Stage0/1/2/3 )。

实际的应用中,例如我们使用 Babel 的时候有这样几个 preset 可以用:

# ES7不同阶段语法提案的转码规则(共有4个阶段),选装一个
$ npm install --save-dev babel-preset-stage-0
$ npm install --save-dev babel-preset-stage-1
$ npm install --save-dev babel-preset-stage-2
$ npm install --save-dev babel-preset-stage-3

那么,babel-preset-stage-0 肯定支持的最新功能是最多的。

从 ES6 开始,官方的标准说法就是不叫 ES6 了,而叫 ES2015 ,所以 ES7 就是 ES2016 ,今年是2017年了,所以咱们用的 ES 标准,官方的说法应该是 ES2017 ,如果非要对应的话,也应该是对应 ES8 了。但是,官方说法归官方,开发者们还是习惯把最新的 JS 就叫 ES6 ,习惯了嘛。

参考:https://ponyfoo.com/books/practical-es6/chapters/1#read