Javascript(ECMAScript)标准的每一个新特性,从一个提议到最终变成新特性发布,有一套严格有序的流程。我们这里关注的重点是:新特性所处每个阶段的含义,而不是如何提议一个新特性。因此不会写过多的细节。目的是给大家学习和使用新特性提供参考。
整个流程分为5个阶段,按照时间顺序依次是从0到4:
| Stage | 含义 |
|---|---|
Stage 0 | 得到TC39认可的初步的想法可进入该阶段。 |
| Stage 1 | 1. 详细的案例。 2. 描述解决方案的大体轮廓。 3. 找出潜在的难点和挑战。 进入该阶段意味着委员会已经开始期望深入下去,想进一步细化成新特性。 |
| Stage 2 | 1. 用正式的标准文档语言精确地描述出新特性的语法、语义和API,越详细越好。 2. spec文档所有的维护人和指定的审核人员需要签发新特性的文档。 3. 在两个不同的JavaScript引擎上的试验性的开发在这个阶段开始 4. 需要两个实现完成并跑过自动化测试:acceptance tests。 |
| Stage 3 | 一旦到这个阶段那就是一个准新特性了。 现在新特性已经确定了实现方案,需要实施经验和大量的使用。 这个阶段主要是等待新特性的实现者和用户的反馈。 需要注意的是,如果这时接到有比较严重的问题的反馈,例如新的API和某个广泛使用的库的API冲突了,那很有可能会打回到Stage2,对新API进行修改,这些最终要看委员会的裁定。 |
| Stage 4 | 新特性处于确定完成状态,等待发布到正式标准中 |
JavaScript的标准和各个实现都在不断的往前发展。当一个新的特性发展到“Stage 3”阶段时,我们就可以去关注学习了,不过使用上还是会有一些风险,需要实时的关注最新的进展。到“Stage 4”阶段时,咱们就可以放心使用了,不过还是要考虑旧版本的兼容性问题。
官方的流程文档:tc39.es/process-doc…
文章到此结束。