ActionScript对象 vs Javascript对象

3

我非常擅长JavaScript,但最近开始学习ActionScript。有人可以教我JavaScript对象和ActionScript对象的区别吗?

请用简短的描述回答我的问题,如果可以附上例子来解释就更好了。


这是一个比较宽泛的问题,但你可以搜索原型语言(如js和as2)与基于类的语言(如as3)之间的区别,以获取摘要。 - J. Holmes
@32bitkid,我认为它们很相似,但可能有一些细微的区别吗? - Umesh Patil
2个回答

5

实际上,ActionScript有两种不同的模式。

  1. 您可以使用字面量或使用new运算符与Function对象结合使用来创建经典的ECMA-script对象。这些对象按照ECMA标准工作。
  2. 您可以通过实例化ActionScript类来创建对象,就像在Java中一样。这些对象确保运行时类型安全性,即如果您尝试将Foo值分配给作为Bar类型的字段,您将获得运行时异常(甚至是编译时异常,如果对象的类型在编译时已知)。

值得注意的是,您可以使用ECMA-script兼容模式编译AS3。在这种情况下,据我所知,所有对象都将作为ECMA-script对象进行操作,牺牲执行速度和运行时类型安全性,但提供了灵活性。


你似乎是闪存大师。 - Umesh Patil

3
基本上,Actionscript是一种传统的面向对象语言,在其中,类定义了实例化物体的结构。
JavaScript则是完全不同的风格;你没有访问类的权限;你可以模拟它们(对于那些从更传统的OOP思维方式中来的人来说这是一个常见趋势),但其优势恰恰在于你所拥有的自由。简而言之:
对象是函数-函数是对象 对象是在运行时创建的,可以用作创建其他对象的基础(原型),并且可以将其自身优势变形和覆盖新的属性和方法,而不必严格遵循类的严格定义。

1+是的安德烈。你是正确的。我在这里找到了Actionscript对象的类文档。 http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Object.html - Umesh Patil

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接