数组坍塌问题
當數組刪除單元操作時,被刪除單元之后的單元,會前移,進而頂替被刪除單元,出現在被刪除單元的位置上,造成數組長度減少的情況,這樣的現象稱為數組坍塌。
正常情況
// 正常情況 for(var i=0;i<=arr.length-1;i++){}數組坍塌情況
例如:我們要刪除第三個位置
但是因為刪除了i為2時候的數組單元,后面原來下標為3的數組單元頂替了下標為2的數組單元,稱為了下標為2的數組單元,這樣就造成了,圖片中小紅沒有被操作過,正常情況下所有的數組單元都會被操作
解決方案
// 數組坍塌解決 for(var i=0;i<=arr.length-1;i++){// 當i為2的時候,刪除數組單元// 當刪除原先的數組單元后,執行i--操作,這樣就能操作圖片中的小紅的數組單元if(i==2){arr.splice(i,1)i--} }總結
- 上一篇: mkv转mp4,大家都在用的方法
- 下一篇: 稀疏数组和队列