什么是 ECMAScript?与 JavaScript 有什么关系?
2024年4月8日
在这篇文章你会知道
- JavaScript 的起源
- JavaScript 和 ECMAScript 之间的关系是什么?两者有什么不一样?
JavaScript 是网页开发中不可或缺的程式语言,随着网页开发技术的快速发展,JavaScript 也一直在持续革新演进,以满足开发者的需求。ECMAScript(简称 ES) 是作为 JavaScript 的标准规范,每年都会有新版本释出,引入新的语法特性和功能。
本文将介绍 JavaScript 和 ECMAScript 之间的关系,帮助读者了解 JavaScript 的发展。
JavaScript 的起源
JavaScript 的诞生可以追溯到 1995 年,当时由 Netscape 公司的 Brendan Eich 开发。当时,网页仍然是静态的,只能呈现文字和图像,缺乏互动性。为了让网页变得更加生动有趣,Netscape 需要一种能够在浏览器中运行的程式语言,赋予网页动态功能。
借助 Java 热潮
起初,JavaScript 被称为 "Mocha",后来改名为 "LiveScript"。最终在 1995 年 12 月,Netscape 与 Sun(Java 的开发商)合作,将其正式命名为 "JavaScript"。
这个名字的选择颇具策略性。当时,Java 语言正处于鼎盛时期,拥有广泛的开发者群体和使用者基础。Netscape 希望通过蹭 Java 的热度,来吸引更多人关注和使用 JavaScript。
微软的 JScript
同年,微软推出了自家的 Internet Explorer 浏览器,加入了浏览器市场竞争。 微软也推出了基于 JavaScript 实作的程式语言 - JScript,并在 IE3.0 中首次支援了 JScript。
开始标准化
由于缺乏统一的标准,Netscape 的 JavaScript 和微软的 JScript(IE 浏览器中的 JavaScript 实作)在语法和功能上存在一些差异,导致网页在不同浏览器上可能无法正常显示。
为解决这个问题,1996 年 Netscape 向欧洲电脑制造商协会(ECMA)提交了 JavaScript 的标准提案。 1997 年,ECMA 以 JavaScript 为基础制定了 ECMAScript 标准规范 ECMA-262,JavaScript 成为了 ECMAScript 最著名的实作之一。
ECMA 简介:ECMA 是一个致力于资讯和通讯系统标准化的国际性行业组织,除了 JavaScript 之外,负责了像 C#等语言的标准制定。(来源:维基百科)
浏览器竞争与语言进展
2000 年初,微软开发的 IE 浏览器占据主导地位,然而,局面在 2004 年开始改变,当时 Netscape 的继任者 Mozilla 推出了 Firefox 浏览器。 同时,JavaScript 及其相关的函式库,如 jQuery,也相继蓬勃发展。
到了 2008 年,Google 首次推出了 Chrome 浏览器,其 V8 JavaScript 引擎比竞争对手更快。 其中一个关键的创新是即时编译(JIT),因此其他浏览器供应商需要彻底改革他们的引擎。
在各方的共同推动下,JavaScript 的发展开始加速。 2009 年,ECMAScript 5 标准发布,引入了许多新的特性,使 JavaScript 更加强大易用。
ECMAScript 6 的诞生
对于 JavaScript 这程式语言来说,2015 年代表着一个重要的变革,因为 ECMAScript 6(也会被称作 ES6, ES2015)标准发布。
实际上,ES6 从 2009 年开始就在修订,修订的目标是为了使这门语言能够支援大型应用的开发,因此在这个版本中加入了许多重要的特性:包括现在所有 JavaScript 开发者都会用到的例如:箭头函式、模组、类别、Promise 等,这些功能使 JavaScript 更加现代化、易于开发和维护。
ECMAScript 每年更新
自 ES6 之后,ECMAScript 采纳了更规律的版本发布机制,每年发布一个新版本,添加新的内容和更新。最近的版本是 2023 年 6 月发布的第 14 个版本。(ECMAScript® 2023 语言规范)
在下一篇文章《ES6 有什么新特性?最新的 ES 版本有什么新特性?》,我们会介绍 ES6 的重要性,以及最新的 ES2023 版本中加入的重要特性与功能。