0

问这个似乎很愚蠢,但是有没有办法在变量声明中的 actionscript 中创建一个关联数组?

例如

private var stages:Array = [
    "name" : "NY Stage",
    "location" : "New York",
    "capacity" : 15000
]

相反,我这样做的方式是(1):在顶部声明数组,然后在类构造函数中创建数组的其余部分:

private var stages:Array;

public function PlayStage(){
    stages["name"] = "NY Stage";
    stages["location"] = "New York";
    stages["capacity"] = 15000;
}

我可以做类似顶部的事情(不创建对象)吗?

4

2 回答 2

3

不要Array用于创建关联数组。如果您阅读Array文档,它特别建议您反对这种做法。

改用一个Object。这是有关如何创建关联数组的文档的链接:

AS3 中的关联数组

要遍历关联数组的键(这也将用于获取长度),您可以使用以下命令:

var oObj:Object = { "name" : "pear", "color" : "yellow" };

...

for ( var key:* in oObj )
{
    // do something with the key or increment a counter, etc.
}
于 2013-07-22T03:44:00.363 回答
1

就像 xxbbcc 说的,关联数组本质上是 AS3 中的对象,所以简写的对象构造会起作用:

private var stages:Object = {
    "name" : "NY Stage",
    "location" : "New York",
    "capacity" : 15000
}
于 2013-07-22T07:37:35.117 回答