5.2.遍历数组成员

问题
我要访问数组的每个元素
解决办法
利用for 循环来遍历数组,使用下标返回元素。
讨论
for循环的初始变量从0开始,结束为array.length-1,因为是从下标0开始的:
+展开
-ActionScript
var letters:Array = ["a""b""c"];
for (var i:int = 0; i < letters.length; i++) {
trace("Element " + i + ": " + letters[i]);
}

也可以降序遍历数组,循环变量从array.length-1开始到0:
+展开
-ActionScript
var letters:Array = ["a""b""c"];
for (var i:int = letters.length - 1; i >= 0; i--){
trace("Element " + i + ": " + letters[i]);
}

有很多情况需要用循环遍历所有元素,比如,获得了包含sprite的数组, 然后把每个sprite的x坐标+1:
+展开
-ActionScript
for (var i:int = 0; i < sprites.length; i++){
sprites[i].x++;
}

可以把数组长度存在变量中,免得每次循环都要重新计算:
+展开
-ActionScript
var length:int = sprites.length;
for (var i:int = 0; i < length; i++){
sprites[i].x++;
}

这样做可以提高Flash 性能,因为不用每次循环都去计算长度了,但是有个前提,就是没有进行插入删除操作来改变长度值,否则就要每次计算长度才行。

加支付宝好友偷能量挖...


评论(0)网络
阅读(116)喜欢(0)flash/flex/fcs/AIR