不要忘记任何复合对象都需要首先初始化。例如(假设初始运行):
有两种方法可以做到这一点:@Sam 的捎带
for (var x:Number = 0; x < identifyArrayCollection.length; x++)
{
if (!identifyArrayCollection[x]) identifyArrayCollection[x] = new ArrayCollection();
identifyArrayCollection[x].addItem(speedsObj);
}
或者如果您真的想使用显式命名约定,则使用匿名对象 - 但是请注意,这些都不是编译时检查的(也不是使用数组访问器的任何东西):
for (var x:Number = 0; x < identifyArrayCollection.length; x++)
{
if (!identifyArrayCollection[x])
{
var o:Object = {};
o.speedsArrayCollection = new ArrayCollection();
identifyArrayCollection[x] = o;
}
identifyArrayCollection[x].speedsArrayCollection.addItem(speedsObj);
}