在AS3中获取对象的构造函数最快的方法是什么?

3

在ActionScript 3的AVM2中,这3个选项中哪个最快(CPU周期最少)?

  1. Object(instance).constructor
  2. (instance as Object).constructor
  3. instance["constructor"]

我想做一些测试,但我不知道如何准确地对这种事情进行分析。

1个回答

6
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
performancetests.Constructors (5 iterations, 5,000,000 loops through each)                            
Player version: MAC 10,0,32,18 (debug)
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
method...................................................ttl ms...avg ms
instanceAsObjectConstructor                                9516  1903.20
instanceBracketConstructor                                 6941  1388.20
objectDotConstructor                                       9916  1983.20
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

我使用了Grant Skinner的AS3性能测试工具并得到了以下结果。

这一定是因为instanceBracketConstructor是唯一一个不强制转换实例的构造函数。否则,这个结果会让我感到害怕。 - dlamblin

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