ECMAScript和JavaScript的区别是什么?根据我的推断,ECMAScript是标准,JavaScript是实现。这对吗?
当前回答
JavaScript是一种ECMAScript语言。
ECMAScript不一定是JavaScript。
其他回答
ECMAScript是JavaScript的标准,看看MDN中的这些语句:
JavaScript
JavaScript (JS)是一种轻量级的解释或jit编译的 具有一流函数的编程语言。虽然它是最 作为Web页面的脚本语言而闻名,许多非浏览器 环境也使用它,如node.js, Apache CouchDB和Adobe 杂技演员。JavaScript是基于原型的、多范式的、动态的 语言,支持面向对象、命令式和声明式 (例如函数式编程)风格。阅读更多关于JavaScript的内容。
ECMAScript
The standard for JavaScript is ECMAScript. As of 2012, all modern browsers fully support ECMAScript 5.1. Older browsers support at least ECMAScript 3. On June 17, 2015, ECMA International published the sixth major version of ECMAScript, which is officially called ECMAScript 2015, and was initially referred to as ECMAScript 6 or ES6. Since then, ECMAScript standards are on yearly release cycles. This documentation refers to the latest draft version, which is currently ECMAScript 2018.
欲了解更多信息,请访问这里
在我的理解中,ECMAScript是“理论”或“规范”,Javascript是“实践”或“实现”。
我知道这是一个老帖子,但希望这能帮助到一些人。
在20世纪90年代,js的不同版本开始出现,比如netscape的javascript, Js脚本来自微软。所以ecmascript作为标准被引入。但是ecmascript只是javascript的一部分,它指定了它的核心语法、类型、对象等。这可能解释了javascript在不同浏览器中的实现不一致
Wrox(面向Web开发人员的专业Javascript)
Javascript是它最初的名字,意在利用java的流行。ECMA是监督最终实施的标准的标准机构,因此名称大致相同。
实现还有其他名字,比如V8或者Rhino等等。
ECMAScript是语言,而JavaScript, JScript,甚至ActionScript 3被称为“方言”。维基百科对此有所解释。
推荐文章
- 如何从javascript子类调用父方法?
- Javascript中Uint8Array的字符串
- 跨浏览器JavaScript(不是jQuery…)滚动到顶部动画
- 如何找到一个值的数组索引?
- 当内部元素滚动位置达到顶部/底部时,防止父元素的滚动?
- Node.js和CPU密集型请求
- val()和text()的区别
- 如何使用Jest测试对象键和值是否相等?
- 将长模板文字行换行为多行,而无需在字符串中创建新行
- 如何在JavaScript中映射/减少/过滤一个集?
- Bower: ENOGIT Git未安装或不在PATH中
- 添加javascript选项选择
- 在Node.js中克隆对象
- 为什么在JavaScript的Date构造函数中month参数的范围从0到11 ?
- 使用JavaScript更改URL参数并指定默认值