JavaScript 简介

本贴最后更新于 1515 天前,其中的信息可能已经时移世易

JavaScript 历史

Brendan Eich 自 1995 年 4 月受聘于网景公司,开始实现一种名为“魔卡(Mocha)”——JavaScript 最早的开发代号或名称的语言。仅两个月之后,为了迎合 Netscape 的 Live 战略而更名为 LiveScript。到了 1995 年年末,又为了迎合市场对 Java 语言的热情,正式地、也是遗憾地更名为 JavaScript,并随网景浏览器推出。

相关书籍《JavaScript 20 年》雪碧翻译)

本书又名《没人比我们更懂的 JavaScript》和《TC39 执政回忆录》,详细记载和解读了自 1995 年语言诞生到 2015 年 ES6 规范制定为止,共计 20 年的 JavaScript 演化经历。全书不仅讲解了大量语言细节层面的演进,更复盘了更高层面上规范制定与标准博弈中的历史成败,是一部讲述人类如何在商业与技术上的竞争合作中促进产业发展的故事。

JavaScript 标准

1997 年 7 月,ECMA(European Computer Manufacturers Association,欧洲计算机制造商协会)组织发布 262 号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript。这个版本就是 ECMAScript 1.0 版。之所以不叫 JavaScript,一方面是由于商标的关系,Java 是 Sun 公司的商标,根据一份授权协议,只有 Netscape 公司可以合法地使用 JavaScript 这个名字,另一方面也是想体现这门语言的制定者是 ECMA,不是 Netscape,这样有利于保证这门语言的开放性和中立性。

截至 2012 年,所有的现代浏览器都完整的支持 ECMAScript 5.1,旧版本的浏览器至少支持 ECMAScript 3 标准。2015 年 6 月 17 日,ECMA 组织发布了 ECMAScript 的第六版,该版本正式名称为 ECMAScript 2015,但通常被称为 ECMAScript 6 或者 ES6。自此,ECMAScript 每年发布一个新版本。

ECMAScript 相关标准:

ECMAScript 是一个标准集合,各标准之间的关系如下图所示(该图来源于 ECMA-414):
Figure1ComponentsoftheECMAScriptSpecificationSuiteStandard.jpg

以上四个标准,除了 ECMA-404,其它三个标准都属于 ECMAScript。而 ECMA-404 是属于 Programming Languages 分类的,见下图(该图截取自 ECMA 官网):
SoftwareEngineeringandInterfaces.png

ECMAScript 标准由 TC-39(TC, Technical Committees)制定。近些年,国内的 360、阿里巴巴、华为和腾讯等公司先后加入了 Ecma,这里有一个 JavaScript 中文讨论组

JavaScript 引擎

SpiderMonkey
Brendan Eich 编写的 JavaScript 引擎最后由 Mozilla 贡献给了开源界,SpiderMonkey 便是这个产品开发中的、开源项目的名称(code-name,即项目代码名)。

JScript(Chakra)
微软于 1996 年在 IE 中实现的一个与网景浏览器类似的脚本引擎。
但是,在 2018 年 12 月微软通过其博客官方宣布:未来将采用 Chromium 内核开发桌面版 Edge 浏览器,以便为用户带来更好的 Web 兼容性,并为所有 Web 开发者减少 Web 碎片化。

V8
V8 是 Google 用 C++ 开发的开源的 JavaScript 引擎,用于 Google Chrome 及 Chromium 中。

相关资料

JavaScript 教程
JavaScript | MDN
《JavaScript 权威指南(第 6 版)》
《JavaScript 语言精髓与编程实践》

  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    729 引用 • 1327 回帖
1 操作
lingyundu 在 2020-09-28 22:48:38 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...