批量删除数组中的多个元素

正向思维的话,在循环中删除了第一条元素后,整个数组的长度都变了,第二个索引会删到那个元素后面的位置

用for循环或者forEach遍历数组的话,在方法体内部splice都得不到正确的结果,解决方法是使用逆向循环

1 //数组的批量删除,逆向循环
2         for (let i = this.confirmedData.length - 1; i >= 0; i--) {
3           for (let j = this.deleteorganizaLise.length - 1; j >= 0; j--) {
4             if (this.confirmedData[i].deptId === this.deleteorganizaLise[j].deptId) {
5               this.confirmedData.splice(i, 1)
6             }
7           }
8         }
原文地址:https://www.cnblogs.com/shun1015/p/12936362.html