请问大家 我通过一个数组索引去删除元素时,遇到索引发生改变如何处理?
new_get_index.forEach(function(item) { $("#ul_pics li").eq(item).remove()
})
例:new_get_index = [4,5]
new_get_index 是属索引数组,用jq 写的 我想根据 new_get_index的每项索引 去删除 $("#ul_pics li") 里的对应元素,但是我发现 循环删除的时候,$("#ul_pics li")的索引会发生改变,删错索引,请问这种情况 要怎么处理?不知道我有没有说清楚
for(let i=$("#ul_pics li").length-1; i >= 0;i--){
if($("#ul_pics li").eq(i).attr('id').indexOf('gallery') == -1){
$("#ul_pics li").eq(i).remove()
}
}
回答:
- 从后往前删除
- 下标 -1 ,也可以理解为步长不 +1
回答:
new_get_index.sort(function(a, b){return b-a}); // 降序排序new_get_index.forEach(function(item) {
$("#ul_pics li").eq(item).remove();
});
以上是 请问大家 我通过一个数组索引去删除元素时,遇到索引发生改变如何处理? 的全部内容, 来源链接: utcz.com/p/934593.html