数组塌陷问题

先举个小栗子

我们想用一个循环,把数组中的每一项都删掉,但是出现了问题,循环结束后,并没有全部删除。

let arr = [1,2,3]
for(let i=0;i

解释:
第一次循环,i=0 ; arr.length=2; 循环后,删除第一项
此时,数组变为[2,3];
继续第二次循环,i=1 ; arr.length=2 循环后,删除第二项
此时发现,数组的第二项是数字3;把第二项删除,最后剩一个数字2
所以:
循环每结束一次,删除一项,数组的length以及每一项的下标都会改变,
最后导致达不到预期的效果

你可能感兴趣的:(数组塌陷问题)