3、讲一讲es6的版本怎么更新的(略少)
现在Firefox,Chrome,Edge,Safari和Node.js的最新版都原生实现了 ES6 规范中超过95%的标准了,但是我们并不需要等到规范百分百的被支持再使用新语法。在描述如何使用之前,我们先看看规范指定的几个阶段。
- Stage0 :任何尚未提交为正式提案的讨论,想法,改变或对已有规范的补充建议都被认为是一个稻草人草案(“strawman” proposal),但只有TC39成员可以提出此阶段的草案。
- Stage1 :此阶段,稻草人草案升级为正式化的提案,并将逐步解决多部门关切的问题,如与其他提案的相互之间会有什么影响,这一草案具体该如何实施等问题。人们需要对这些问题提供具体的解决方案。stage1的提案通常还需要包括API描述,拥有说明性使用示例,并对语义和算法进行讨论,一般来说草案在这一阶段会经历巨大的变化。
- Stage2 :此阶段,草案就有了初始的规范。通过
polyfill
,开发者可以开始使用这一阶段的草案了,一些浏览器引擎也会逐步对这一阶段的规范的提供原生支持,此外通过使用构建工具也可以编译源代码为现有引擎可以执行的代码,这些方法都使得这一阶段的草案可以开始被使用了。 - State3 :此阶段的规范就属于候选推荐规范了,这一阶段之后变化就不会那么大了,要达到这一阶段需要满足以下条件:
- 规范的编辑和指定的审阅者必须在最终规范上签字;