8

这篇文章中,它说 ActionScript 3.0 符合 ECMA 第 4 版。但是,ActionScript 3.0 代码看起来不像 JavaScript 并且没有类或扩展,而是看起来像 Java,并且有class语句,甚至有extend?

4

4 回答 4

6

Actionscript 3 是在 ECMA 4 规范仍在开发中时设计的。这是不同的;它符合 ECMA 4,但超出了它。

于 2012-10-02T23:52:40.287 回答
4

因为有ActionScript 3基于的ECMAScript 4th Edition草案class等等extends

http://en.wikipedia.org/wiki/ECMAScript#ECMAScript.2C_4th_Edition

http://www.ecma-international.org/activities/Languages/Language%20overview.pdf

后来,第 4 版草稿被 ECMAScript Harmony 取代:

http://en.wikipedia.org/wiki/ECMAScript#History_2

有人会说这是商业政治的原因,但你必须对此形成自己的知情意见。

于 2012-10-07T13:29:28.217 回答
2

Actionscript 从一开始就符合 ECMA。

您可以将 javascript 和 actionscript 想象为单一标准(即 ECMA)的一个分支,其中 Javascript 倾向于为浏览器增加功能,而 Actionscript 则面向 Flash 开发。

似乎很公平,因为每家公司都曾试图创建自己的版本。例如,考虑Microsoft 的ECMA 版本。

您还可以从您共享的链接中考虑:

为了响应用户对更适合更大和更复杂应用程序的语言的需求,ActionScript 2.0 提供了编译时类型检查和基于类的语法,例如关键字 class 和 extends。

因此,您可以看到大多数更改实际上是用户驱动的,而不是偶然的相似性。

于 2012-10-03T04:00:02.937 回答
0

一般来说,符合标准并不意味着只有标准定义的功能必须可用。您可以实施标准以使其符合要求,但您也可以实施其他功能。

您可以将 ECMA 脚本视为一种定义基本语言结构、语法和语义的子集。那么ECMA 只是ActionScript 的一个子集。该语言为该子集添加了广泛的功能。

另一个例子可能是 MySQL。它实现了 SQL 标准,但提供了与标准类似的更多功能。

于 2012-10-03T09:35:58.713 回答