如何在 actionscript 3 中访问对象内的数组值?
How to access array value inside an object in actionscript 3?
我有一个对象可以在 Actionscript 3 中指定动物的属性:
var Rabbit:Object = {
food : "Carrot",
predator : ["Lion","Eagle","Human"]
};
并通过调用 Rabbit['predator']
将给出输出 Lion,Eagle,Human
.
我想访问对象 Rabbit
中那个 predator
数组(如 predator[1]
)的特定索引,并将其存储在一个变量中。但是调用 Rabbit['predator'[1]]
或 Rabbit[predator[1]]
并没有给我任何想要的输出。我怎样才能访问它?
非常感谢您的帮助
您可以像这样访问对象内部的数组:
var arr:Array = Rabbit.predator as Array;
trace(arr[1]);
或者你也可以这样做:
Rabbit.predator[1];
希望对您有所帮助。
var name:String = Rabbit.predator[0]; // Lion
var name:String = Rabbit["predator"][1]; // Eagle
您可以考虑将 Rabbit 的所有属性都作为数组,这样您就可以始终将其 "qualities" 视为一组值。我在下面做了兔子。例如,
var rabbit:Object =
{
food: ["Carrot"],
predator: ["A", "B", "C"]
};
...然后你可以...
for ( var key:String in rabbit )
{
trace( key );
var vals:Array = rabbit[key];
for ( var i:int = 0; i < vals.length; ++i )
{
trace( " ", vals[i] );
}
}
Javascript 变量以小写开头,类 以大写开头是惯例。因此,在您的代码中,考虑使用 rabbit 而不是 Rabbit。
我有一个对象可以在 Actionscript 3 中指定动物的属性:
var Rabbit:Object = {
food : "Carrot",
predator : ["Lion","Eagle","Human"]
};
并通过调用 Rabbit['predator']
将给出输出 Lion,Eagle,Human
.
我想访问对象 Rabbit
中那个 predator
数组(如 predator[1]
)的特定索引,并将其存储在一个变量中。但是调用 Rabbit['predator'[1]]
或 Rabbit[predator[1]]
并没有给我任何想要的输出。我怎样才能访问它?
非常感谢您的帮助
您可以像这样访问对象内部的数组:
var arr:Array = Rabbit.predator as Array;
trace(arr[1]);
或者你也可以这样做:
Rabbit.predator[1];
希望对您有所帮助。
var name:String = Rabbit.predator[0]; // Lion
var name:String = Rabbit["predator"][1]; // Eagle
您可以考虑将 Rabbit 的所有属性都作为数组,这样您就可以始终将其 "qualities" 视为一组值。我在下面做了兔子。例如,
var rabbit:Object =
{
food: ["Carrot"],
predator: ["A", "B", "C"]
};
...然后你可以...
for ( var key:String in rabbit )
{
trace( key );
var vals:Array = rabbit[key];
for ( var i:int = 0; i < vals.length; ++i )
{
trace( " ", vals[i] );
}
}
Javascript 变量以小写开头,类 以大写开头是惯例。因此,在您的代码中,考虑使用 rabbit 而不是 Rabbit。