删除数组中不符合条件的值
采用 i-- 的方式,因为splice方法会改变数组,如果采用 i = 0;i++;的方式遍历进行删除操作,会产生遗漏项
在代码中,遍历列表是从后向前循环,这样在列表中移除当前位置时,不会影响列表中未遍历到的位置;如果是从前向后遍历,那么当从列表中移除当前位置时,后面的会自动行前移动一个位置,这样会导致下一轮循环时跳过一个元素。
function delFalseValInArr (){ let arr = [true,false,false,true,false] for(let i = arr.length - 1;i > -1;i--){ let item = arr[i] if(!item){ arr.splice(i,1) } } return arr }
以自己现在的努力程度,还没有资格和别人拼天赋