js数组删除对应下标数组bug
Posted 野猪佩奇007
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js数组删除对应下标数组bug相关的知识,希望对你有一定的参考价值。
项目场景:
表格选择删除对应数组如下:
问题描述:
提示:一开始按照另一个数组的下标来作为删除条件,但是达到的效果就是数据数组删除后改变了length,也改变了下标,导致如果删除三个,只有两个删掉了,中间那个因为数据删除,往前移了一个位置导致他变成了下标0的数据但是循环已经到了1这里,就会出错漏掉
@Override
for (let index = 0; index < this.arr2.length; index++)
this.arr1[this.arr2[index]].splice(index,1)
解决方案:
循环的时候给arr1里添加一个值,用来标识是否删除,之后在循环arr1本身,删除一个i–一次再判断删除,就可以避免隔过去
for (let index = 0; index < this.arr2.length; index++)
this.arr1[this.arr2[index]].isdel = false;
for (let i = 0; i < this.arr1.length; i++)
if(this.arr1[i].isdel==false)
this.arr1.splice(i,1)
i--
以上是关于js数组删除对应下标数组bug的主要内容,如果未能解决你的问题,请参考以下文章