ECMAScript和JavaScript的区别是什么?根据我的推断,ECMAScript是标准,JavaScript是实现。这对吗?


当前回答

从技术上讲,ECMAScript是每个人都在使用和实现的语言——它是许多年前Netscape和Microsoft坐下来试图在JavaScript (Netscape的脚本语言)和JScript (Microsoft的脚本语言)之间标准化脚本时创建的规范。

随后,所有这些引擎表面上都实现了ECMAScript,然而JavaScript(这个名字)现在因为传统的命名原因而存在,并且作为Mozilla用于各种非标准扩展的营销术语(他们希望能够真正“版本”)。

其他回答

如果不是因为“JavaScript”这个名字属于Sun,我怀疑我们永远不会使用“ECMAScript”这个词。无论如何,这种语言都是JavaScript。你不会去书店找ECMAScript的书吧?

说“JavaScript”就是实现有点太简单了。JScript是微软的实现。

在我的理解中,ECMAScript是“理论”或“规范”,Javascript是“实践”或“实现”。

Javascript是它最初的名字,意在利用java的流行。ECMA是监督最终实施的标准的标准机构,因此名称大致相同。

实现还有其他名字,比如V8或者Rhino等等。

总称:

JavaScript = ECMAScript + DOM +炸弹;

ECMAScript®语言规范定义了创建和编辑对象、数组、数字等的所有逻辑… DOM(文档对象模型)使得与HTML/XML文档(例如Document . getelementbyid ('id');)通信成为可能。 BOM(浏览器对象模型)是浏览器对象的层次结构(例如位置对象,历史对象,表单元素)。

JavaScript命名的历史:

Mocha►LiveScript►JavaScript(语言)►(JS的一部分结果)►ECMA-262►ECMAScript►JavaScript(总称,由ECMAScript + DOM + BOM组成)

从技术上讲,ECMAScript是每个人都在使用和实现的语言——它是许多年前Netscape和Microsoft坐下来试图在JavaScript (Netscape的脚本语言)和JScript (Microsoft的脚本语言)之间标准化脚本时创建的规范。

随后,所有这些引擎表面上都实现了ECMAScript,然而JavaScript(这个名字)现在因为传统的命名原因而存在,并且作为Mozilla用于各种非标准扩展的营销术语(他们希望能够真正“版本”)。