为啥我的输出顺序看似随机(动作脚本 3.0)?

Posted

技术标签:

【中文标题】为啥我的输出顺序看似随机(动作脚本 3.0)?【英文标题】:Why is my output order seemingly random (action script 3.0)?为什么我的输出顺序看似随机(动作脚本 3.0)? 【发布时间】:2012-11-06 13:17:06 【问题描述】:
var personTab:Object=new Object()  
personTab.firstName='John'  
personTab.lastName='Appleseed'  
personTab.age=18  
for(var A:String in personTab)  
  

    trace(A+': '+personTab[A])  

输出顺序是姓氏、名字、年龄。我不明白为什么它不是名字,姓氏,年龄。此外,如果我将变量“A”的名称更改为“foo”,则顺序更改为 firstName、age、lastName。

【问题讨论】:

【参考方案1】:

ActionScript 中的对象是无序的,本质上您可以将它们视为哈希表或关联数组,其中的值由它们的键引用(请参阅documentation)。如果顺序对您很重要,您应该使用数组,或者,如果您还需要按键查找值的能力,请创建您自己的自定义集合来保留顺序。

【讨论】:

以上是关于为啥我的输出顺序看似随机(动作脚本 3.0)?的主要内容,如果未能解决你的问题,请参考以下文章

Zend Framework - 改变动作输出的顺序

简单的代码,看似随机的结果 - 这是由于过时的引用吗?

如何在查找2个列表的差异时维护输出列表的顺序

为啥它以随机顺序初始化这个 Knockout.js 组件?

为啥通过jQuery中的for循环后数组顺序是随机的? [复制]

竹原木输出顺序问题