3

我有一本书,Essential ActionScript 3 (O'Reilly),来学习使用这种语言。它提到 ActionScript 3 是 ECMAScript 的实现,就像 Javascript 一样。我觉得这很奇怪,因为有很多不同之处。据我所知,在 Javascript 中,您不能为变量指定类型(var marvin : Robot)或创建“传统”类和接口。但是,这在 ActionScript 中是可能的。

这是怎么回事?

4

4 回答 4

12

当前浏览器中 Javascript 的实现遵循 Ecmascript 3 规范。Actionscript 实现了 Ecmascript 3,但除此之外,还实现了 Ecmascript 4 规范草案中的一些元素(当时)。ES4 具有类、经典继承、包和您在 AS3 中看到的其他特性。

ES4 现在已被放弃,但这里是规范PDF的链接。

于 2009-09-14T21:53:40.677 回答
1

ActionScript 1(Flash Player 5 和 6)非常接近 JavaScript。

于 2009-09-20T12:32:22.480 回答
0

维基百科关于ECMAScript状态的页面(引用)

ECMAScript 是一种脚本语言,由 Ecma International 在 ECMA-262 规范和 ISO/IEC 16262 中标准化。该语言在网络上被广泛使用,尤其是以其三种最著名的方言 JavaScriptActionScriptJScript的形式。

所以我猜测这三种语言是 ECMAScript 的“子代”,并且它们中的每一个都选择实现(或不实现)某些特定功能——同时都保持相同的根。


关于ActionScript的页面证实了这一点,说明(引用,强调我的)

ActionScript 是一种 基于ECMAScript 的脚本语言。

我想这个“基于”是重要的部分。


此外,我会说,根据使用的 ECMAScript 版本可能会有所不同——尤其是考虑到人们在谈论ECMAScript 5,例如,Javascript 是基于 ECMAScript 3 的

截至 2009 年,该语言的最新版本是 JavaScript 1.8.1。它是 ECMAScript (ECMA-262) 第 3 版的超集。

于 2009-09-14T21:53:23.113 回答
0

ECMAScript 只是一种脚本语言的标准。Javascript 和 Actionscript 都是该标准的实现。每个实现可能会或可能不会严格遵循该标准,并且两者都可以自由地添加和减去它。

于 2009-09-14T21:55:04.170 回答