ES6是什么

ES6 从开始制定到最后发布,整整用了 15 年。
前面提到, ECMAScript 1.0 是 1997 年发布的,接下来的两年,连续发布了 ECMAScript 2.0
( 1998 年 6 月)和 ECMAScript 3.0 ( 1999 年 12 月)。 3.0 版是一个巨大的成功,在业界得到
广泛支持,成为通行标准,奠定了 JavaScript 语言的基本语法,以后的版本完全继承。直到今
天,初学者一开始学习 JavaScript ,其实就是在学 3.0 版的语法。
2000 年, ECMAScript 4.0 开始酝酿。这个版本最后没有通过,但是它的大部分内容被 ES6 继
承了。因此, ES6 制定的起点其实是 2000 年。 为什么 ES4 没有通过呢?因为这个版本太激进了,对 ES3 做了彻底升级,导致标准委员会的
一些成员不愿意接受。 ECMA 的第 39 号技术专家委员会( Technical Committee 39 ,简称
TC39 )负责制订 ECMAScript 标准,成员包括 Microsoft 、 Mozilla 、 Google 等大公司。
2007 年 10 月, ECMAScript 4.0 版草案发布,本来预计次年 8 月发布正式版本。但是,各方对
于是否通过这个标准,发生了严重分歧。以 Yahoo 、 Microsoft 、 Google 为首的大公司,反对
JavaScript 的大幅升级,主张小幅改动;以 JavaScript 创造者 Brendan Eich 为首的 Mozilla 公司,
则坚持当前的草案。
2008 年 7 月,由于对于下一个版本应该包括哪些功能,各方分歧太大,争论过于激烈,
ECMA 开会决定,中止 ECMAScript 4.0 的开发,将其中涉及现有功能改善的一小部分,发布
为 ECMAScript 3.1 ,而将其他激进的设想扩大范围,放入以后的版本,由于会议的气氛,该
版本的项目代号起名为 Harmony (和谐)。会后不久, ECMAScript 3.1 就改名为 ECMAScript
5 。
2009 年 12 月, ECMAScript 5.0 版正式发布。 Harmony 项目则一分为二,一些较为可行的设想
定名为 JavaScript.next 继续开发,后来演变成 ECMAScript 6 ;一些不是很成熟的设想,则被视
为 JavaScript.next.next ,在更远的将来再考虑推出。 TC39 委员会的总体考虑是, ES5 与 ES3 基
本保持兼容,较大的语法修正和新功能加入,将由 JavaScript.next 完成。当时, JavaScript.next
指的是 ES6 ,第六版发布以后,就指 ES7 。 TC39 的判断是, ES5 会在 2013 年的年中成为
JavaScript 开发的主流标准,并在此后五年中一直保持这个位置。
2011 年 6 月, ECMAScript 5.1 版发布,并且成为 ISO 国际标准( ISO/IEC 16262:2011 )。
2013 年 3 月, ECMAScript 6 草案冻结,不再添加新功能。新的功能设想将被放到
ECMAScript 7 。
2013 年 12 月, ECMAScript 6 草案发布。然后是 12 个月的讨论期,听取各方反馈。
2015 年 6 月, ECMAScript 6 正式通过,成为国际标准。从 2000 年算起,这时已经过去了 15
年。

相关推荐
前端_yu小白8 分钟前
react常用优化手段
前端·javascript·react.js·性能优化·usecallback·usememo
攀登的牵牛花10 分钟前
前端向架构突围系列 - 框架设计(六):解析接口职责的单一与隔离
前端·架构
开开心心_Every15 分钟前
离线黑白照片上色工具:操作简单效果逼真
java·服务器·前端·学习·edge·c#·powerpoint
Mintopia22 分钟前
🌌 信任是否会成为未来的货币?
前端·人工智能·aigc
fqbqrr23 分钟前
2601C++,模块导出分类
前端·c++
倚栏听风雨28 分钟前
vscode 运用 ts 代码需要准备什么
前端
韩曙亮36 分钟前
【Web APIs】浏览器本地存储 ① ( window.sessionStorage 本地存储 | window.localStorage 本地存储 )
服务器·前端·javascript·本地存储·localstorage·sessionstorage·web apis
吃杠碰小鸡39 分钟前
前端Mac快速搭建开发环境
前端·macos
前端大波43 分钟前
使用webpack-bundle-analyzer 对 react 老项目进行打包优化
前端·react.js·webpack·性能优化
前端 贾公子1 小时前
(catalog协议) == pnpm (5)
前端·javascript·react.js