做为Web开发者固然须要紧跟Web规范的变化。最好的方式固然就是参与标准的制定过程,你不必定须要实际提出建议,反馈新特性的实际使用状况也是一种参与。因此我把Web相关标准的制定流程和参与方式作一个总结。php
ECMAScript:JavaScript是ECMAScript的一种实现,除了JavaScript还有ActionScript等实现
ECMA-262:ECMA-262规范,就是ECMAScript语言的官方标准
ECMA TC39:ECMA第39号技术委员会,负责制定ECMAScript规范。TC39的成员有Microsoft、Google、Apple等浏览器厂商、此外还有jQuery、Intel等组织或公司,详细人员能够在这里查看html
ECMAScript每一年发布一次新标准,每一年新增的特性都会尽量少(由于必须保证一年内可以完成)。常青浏览器配合标准每六周发布一次新版的加速JavaScript的进化。常青浏览器为git
Microsoft Edgegithub
Mozilla Firefox算法
Google Chrome浏览器
Operababel
Apple Safariide
一个新特性从提出到正式成为规范的一部分须要通过5个阶段post
说明:该阶段能够以任何方式提交推进ECMAScript发展的想法
进入条件:文档必须经过TC39会议审议,经过后将会放到Stage 0 Proposals页面
参与方式:任何人均可以在 https://github.com/tc39/ecma262提交pull request来提交新提议。注册成为ECMA贡献者之后可以以任何形式提交提议单元测试
说明:对提议的正式建议
进入条件:
提供Polyfills和demos
指定一名TC39成员来负责该提议。
大概的问题的描述以及解决方案
使用方法的用例
高层级API
关于关键算法、抽象和语法的讨论
肯定潜在问题,好比实现难度等等
说明:阶段二会是标准的第一个版本。此时将会出现标准中的最终特性是差很少的。
进入条件:
前述的全部条件
提供两种实现方式,有一种能够是babel编译实现
第一版的标准,有更规范化有关特性的语法和语义的说明(使用ECMAScript标准的正式语言)。
说明:此时提议已经接近完成,这个阶段须要获得实现方的反馈,以及用户使用的反馈。
进入条件:
提供两种实现(能够是实验性实现)与规范兼容
前述的全部条件。
完整的标准。
由ECMAScript标准的编辑以及TC39指派的审稿人审查经过并签字。
说明:提议将被包括到下一个版本的标准当中
进入条件:
使用Test 262编写的单元测试来验证语言的特性
两个经过测试而且互相兼容的实现
重要的领域内实践经验。 须要订正:Significant in-the-field experience with shipping implementations, such as that provided by two independent VMs
将完整的规范文本提交pull request到tc39/ecma262、ECMAScript标准的编辑必需要签署上述pull request
TC39会维护一个列表,包含了当前正在制定中的新特性,能够在这里查看
TC39委员会每一年会在7月份向ECMA会议(ECMA General Assembly)提交标准来得到认可。一份新标准发布的大概时间线以下
2月1日:候选草案(Candidate Draft)发布
2月-3月:60天免版税时间的退出时间。 须要订正:60 day royalty-free opt-out period
3月TC39会议:第四阶段的提议被采纳,语法被肯定并核准,新的标准将会从新从主干分支中分离,从这里开始只能做文字性的改动
4月到6月:ECMA CC 和ECMA会议审核
7月:ECMA会议批准新的标准
JavaScript史无前例的繁荣。ECMAScript标准的制定过程也彻底在Github上公开,使得公众可以参与进来。你还能够经过如下方式关注标准的制定过程
https://github.com/tc39,39号委员会的Github,全部标准制定的相关工做、讨论、会议记录均会公开在上面
https://mail.mozilla.org/listinfo/es-discuss,这个是mozilla组织中对ECMAScript的相关讨论的邮件列表