使用while循环时出现错误#1010:
while (pos.length>0)
{
coo = pos.splice(Math.floor(Math.random() * pos.length),1)[0];
(pos_array[index]).x = coo.x;
(pos_array[index]).y = coo.y;
index++;
}
错误提示:
A term is undefined and has no properties.
我的循环出了什么问题,因为我对其他程序使用了相同的循环,但没有得到这样的错误。
感谢您的关注。
最佳答案
您的while循环正在中断。
pos.length永远不会改变,最终pos_array[index]
将超出范围。
当您超出范围时,它是不确定的。
所以基本上你在做。
undefined.x = coo.x;
就像错误说undefined没有属性一样。
我看不到此循环如何工作。
试试这个更干净
var savedX:Number = 0
for each( var obj:Object in pos_array ){
coo = new MovieClip()
coo = pos.splice(Math.floor(Math.random() * pos.length),1)[0];
obj.x = savedX;
obj.y = 0;
savedX += coo.width;
}
关于actionscript-3 - 错误1010 ActionScript 3,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7928753/