所以我要做的就是遍历数组“maps”的每个元素,其中包含4个动画片段并查看每个动画片段中的子项以查看哪些类型为“块”。但是我收到#2006错误,我不知道为什么,有人可以帮忙吗?
function findBlocks()
{
trace("findBlocks()");
for (i=0; maps.length; i++)
{
for (var j=0; maps[i].numChildren; j++)
{
var mc = maps[i].getChildAt(j);
if (mc is Block)
{
blocks.push(mc);
}
}
}
trace("blocks array: " + blocks);
}
答案 0 :(得分:3)
你的for循环条件不正确,试试这个:
for (var i=0; i < maps.length; i++){
for (var j=0; j < maps[i].numChildren; j++){
var mc = maps[i].getChildAt(j);
if (mc is Block){
blocks.push(mc);
}
}
}
你必须记住,数组和显示列表从0开始,所以列表中最后一个元素的索引是length-1,如果是显示列表,则为numChildren-1
i < maps.length
和
j < maps[i].numChildren
是解决问题的方法