waw*_*gna 0 apache-flex actionscript-3
早安stackoverflow ...我遇到了问题....这是我的示例代码
var i:Number = new Number();
trace("showarray length" + showArray.length);
for(i=0;i<showArray.length;i++){
trace("equal daw" + showArray.getItemAt(i).id + "==" + num);
if(showArray.getItemAt(i).id == num){
showArray.removeItemAt(i);
}
}
trace('alerts');
Run Code Online (Sandbox Code Playgroud)
myproblem这里是......无论if何时满足它都会停止循环,它会立即退出循环
这是一个示例输出,因为showArray的长度是2而num = 0
showarray length2
等于daw0 == 0
警报
请帮我
如果要在迭代数组时删除项目,请按相反顺序迭代.这样,元素移除不会影响循环条件:
for (var i:int = showArray.length - 1; i >= 0; i--) {
if (someCondition) {
showArray.removeItemAt(i);
}
}
Run Code Online (Sandbox Code Playgroud)
另一个小奖励,它稍微快一点,因为它不会在每一步调用showArray.length.
| 归档时间: |
|
| 查看次数: |
3070 次 |
| 最近记录: |