- 前言
- 关于 ECMASCRIPT 发展史和现状
- ES6 带来的重大特性
- ES2016(ES7)的改进
- ES2017(ES8)带来的重大新特性
- ES2018(ES9)带来的重大新特性
- JavaScript 编码风格指南
- JavaScript 词法结构(构建块)
- JavaScript 变量
- JavaScript 数据类型
- JavaScript 表达式
- 原型继承
- 如何使用 JavaScript 中的 Classes(类)
- JavaScript 异常处理
- JavaScript 中的分号(;)
- JavaScript 中的引号
- JavaScript 字面量模板(Template Literals)指南
- JavaScript 中的 function(函数)
- JavaScript 箭头函数(Arrow Function)
- JavaScript 中的闭包(Closures)
- JavaScript 数组(Arrays)
- JavaScript 中的循环(Loops)
- JavaScript 中的事件(Events)
- JavaScript 中的事件循环(Event Loop)
- JavaScript 异步编程和回调
- 理解 JavaScript 中的 Promises
- 用 async 和 await 编写现代 JavaScript 异步代码
- JavaScript 中的 循环(Loops) 和 作用域(Scope)
- JavaScript 定时器 setTimeout() 和 setInterval()
- JavaScript 中的 this
- JavaScript 严格模式(Strict Mode)
- JavaScript 中的 立即执行函数表达式(IIFE)
- JavaScript 中的数学运算符
- JavaScript 中的 Math 对象
- 介绍 ES Modules(模块)
- 介绍 CommonJS
- JavaScript 术语表
关于 ECMASCRIPT 发展史和现状
每当您阅读 JavaScript 相关内容时,您将不可避免地看到以下其中一些术语:
- ES3
- ES5
- ES6
- ES7
- ES8
- ES2015
- ES2016
- ES2017
- ECMAScript 2017
- ECMAScript 2016
- ECMAScript 2015
他们的意思是什么呢?
它们都指的是一个名为 ECMAScript 的标准。
ECMAScript 是 JavaScript 实现所基于的标准,它通常缩写为 ES 。
除 JavaScript 外,其他语言实现(ed)ECMAScript,包括:
- ActionScript (Flash 脚本语言),自 Flash 宣布将于 2020 年正式停止维护以来,它的人气正在下降。
- JScript(微软脚本语言),因为当时只有 Netscape 支持 JavaScript 并且浏览器大战达到顶峰,微软必须为 Internet Explorer 构建自己的脚本语言。
但是,当然,JavaScript 是 最流行 和广泛使用的 ES 实现。
为何这个奇怪的名字? Ecma International
是瑞士标准协会,负责制定国际标准。
当 JavaScript 被创建时,它由 Netscape 和 Sun Microsystems 呈给 Ecma ,他们给它命名为 ECMA-262 ,别名 ECMAScript 。
根据 维基百科的说法 , Netscape 和 Sun Microsystems (Java 的制造商) 发布的这篇新闻稿 可能会帮助你确定名字的选择,其中可能包括微软在委员会中的法律和品牌问题。
在 IE9 之后,微软停止在浏览器中将其 ES 支持称为 JScript ,并开始将其称为 JavaScript (至少,我再也找不到对 JScript 的引用了)。
因此,截至 201x,支持 ECMAScript 规范的唯一流行语言是 JavaScript 。
当前的 ECMAScript 版本
当前的 ECMAScript 版本是 ES2017,也称为 ES8 。它于 2017 年 6 月发布。
下一个版本何时推出?
从历史上看,JavaScript 新版本(ES2018)在今年夏季已经标准化,因此我们可以预期为 ECMAScript 2019( ES2019 或 ES10 )将于 2019 年夏季发布,但这只是猜测。
关于 TC39
TC39 是 JavaScript 发展委员会。
TC39 的成员是涉及 JavaScript 和浏览器供应商的公司,包括 Mozilla,Google,Facebook,Apple,Microsoft,Intel,PayPal,SalesForce 等。
每个标准版本提案都必须经过几个阶段, 这里将对此进行解释 。
ES 版本
我发现令人费解的是,为什么有时 ES 版本会以版本编号引用,有时却按年份引用。
在 ES2015 之前,ECMAScript 规范通常按其版本命名。 因此,ES5 是 2009 年更新发布的 ECMAScript 规范的官方名称。
为什么会这样呢? 在 ES2015 诞生的过程中,这个名字从 ES6 变成了 ES2015 ,原因是由于这个过程比较晚,人们仍然把它习惯性的称为 ES6 ,社区并不是忘记了 ES2015 版本的命名 —— 只不过大家仍然在按照版本号来称呼 ES 的版本。
这个表应该清楚一点:
ES.Next 始终指示下一版本 JavaScript 的名称。
在撰写本文时,ES9 已经发布,ES.Next 是 ES10 。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论