我认为它应该提醒 4 次,但为什么只提醒了 2 次。有谁可以帮我解释一下吗?
var arr = new Array;
arr.push("1");
arr.push("2");
arr.push("3");
arr.push("4");
for(var i=0;i<arr.length;i++){
alert(arr.pop());
}
最佳答案
将 for
循环更改为 while
循环:
while(arr.length) {
alert(arr.pop());
}
问题是您从数组中删除了元素,因此 length
减少了,从而提前结束了 for
循环。在 for
循环迭代 2 次之后,arr.length
为 2,i
也为 2,因此循环结束。
这是一个working example以上。
关于javascript - 使用js数组作为栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10849052/