for循环使用splice踩坑

127 阅读1分钟

for循环使用splice

  1. splice(index,1) ---> 删除指定位置元素
 const arr = ['a','a','a','b','e','f']
 for (let index = 0;arr.length - 1;index++) {
   if(arr[index] == 'a') {
     arr.splice(index,1)
   }
 }
 console.log(arr)  // ['a','b','e','f'] 删除不完全存在缺陷
 // 解法一: i--(if里加)
 // 解法二: 采用倒序
 ​
 for (const index in arr) {
   if(arr[index] == 'a') {
     arr.splice(index,1)
   }
 }
 // 这种写法待解决  i--(if里加)不适用