ECMAScript、JavaScript和JScript

ECMAScript、JavaScript和JScript

分类: UED_前端开发 2010-10-25 08:18 107人阅读 评论(0) 收藏 举报

虽然ECMAScript最终成为了JavaScript语言的标准版本,但是人们并不习惯称呼JavaScript为ECMAScript。直到今天,我们提及的JavaScript语言实际上就是指标准化的ECMAScript语言。

而且,各家公司在发布JavaScript版本时,并非自觉按着ECMAScript版本行事,而是沿袭自己公司的JavaScript版本号,同 时各个版本的JavaScript之间语言支持特性也并不是完全统一,所以容易给学习者造成混乱。为了帮助读者学习,我们列出了Netscape公司、 Microsoft公司和ECMA组织各自发布的JavaScript版本号,并且解释了它们的关键特性和各个版本之间的关联(如表1-1所示)。

表 1-1 JavaScript 、 JScript 和 ECMAScript 版本比较

版本

说明

Netscape 的 JavaScript

JavaScript 1.0

由 Netscape Navigator 2.0 版本浏览器开始支持,

目前该版本已经被废弃。它也是 JavaScript 最原始的版本

JavaScript 1.1

由 Netscape Navigator 3.0 版本浏览器开始支持,

引入真正的 Array 对象,解决了 1.0 版本中大量的错误

JavaScript 1.2

由 Netscape Navigator 4.0 版本浏览器开始支持,引入 switch

语句、正则表达式和大量其他特性,与 ECMAScript v1 版

本基本符合,但是还存在很多不兼容性

JavaScript 1.3

由 Netscape Navigator 4.5 版本浏览器开始支持,修正了

JavaScript 1.2 版本的不兼容性,符合 ECMAScript v1 版本标准

JavaScript 1.4

只在 Netscape 的服务器产品中支持

JavaScript 1.5

由 Netscape Navigator 6.0 版本浏览器和 Mozilla 浏览器开始支持,

引入异常处理机制,符合 ECMAScript v3 版本标准

Microsoft 的 JScript

JScript 1.0

由 IE 3 早期版本浏览器开始支持,基本上相当于 JavaScript 1.0

JScript 2.0

由 IE 3 后期版本浏览器开始支持,基本上相当于 JavaScript 1.1

JScript 3.0

由 IE 4 版本浏览器开始支持,基本上相当于 JavaScript 1.3 ,

符合 ECMAScript v1 版本标准

JScript 4.0

还没有浏览器对其支持

(续表)

版本

说明

JScript 5.0

由 IE 5 版本浏览器开始支持,支持异常处理机制,

部分符合 ECMAScript v3 版本标准

JScript 5.5

由 IE 5.5 版本浏览器开始支持, IE 6 版本浏览器开始支持 JScript 5.6 版本

基本相当于 JavaScript 1.5 版本浏览器,完全符合

ECMAScript v3 版本标准

ECMA 的 ECMAScript

ECMA v1

JavaScript 语言的第一个标准版本,标准化了 JavaScript 1.1

版本的基本特性,并添加了一些新特性,没有把 switch 语句

和正则表达式设置为标准,与 JavaScript 1.3 和 JScript 3.0 版本实现一致

ECMA v2

对 ECMA v1 版本进行了维护,添加了说明文档,但是没有添加新的特性

ECMA v3

标准化了 switch 语句、正则表达式和异常处理机制,

与 JavaScript 1.5 和 JScript 5.5 版本实现一致

严格地讲,ECMAScript仅仅是一个描述文档,它定义了脚本语言的所有属性、方法和对象。其他的语言可以根据ECMAScript文档描述的标准来实现具体的应用版本。例如,JavaScript就是这样,如图1-1所示。

ECMAScript、JavaScript和JScript
(点击查看大图)图1-1 ECMAScript文档规范的应用示意图

简单地说,ECMAScript文档描述了如下基本内容:

语法。

保留字。

关键字。

类型。

运算符。

语句。

对象。

每个浏览器都定义了脚本引擎接口,从而实现了对JavaScript引擎嵌入的需要,当然这些JavaScript引擎一般都遵循ECMAScript文档描述的标准来实现,然后又实现对其他标准接口的扩展,如DOM和BOM等

相关推荐