当前位置:   article > 正文

如何根据索引删除数组中的元素,并保证删除的正确性_删除数组中置顶索引的元素

删除数组中置顶索引的元素

使用 splice() 方法来删除这些索引处的数据

var array = [1, 2, 3, 4, 5];
var indexesToDelete = [1, 3]; // 需要删除的索引

// 将需要删除的索引按照从大到小的顺序排序,以避免删除元素后索引发生变化
indexesToDelete.sort((a, b) => b - a);

// 遍历需要删除的索引
indexesToDelete.forEach(index => {
    array.splice(index, 1); // 删除索引处的元素
});

console.log(array); // 输出 [1, 3, 5]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 在上面的示例中,我们首先定义了需要删除的索引数组 indexesToDelete,然后对其进行排序,确保我们按照从大到小的顺序删除元素,这样可以避免删除元素后索引发生变化。然后,我们使用 forEach 方法遍历需要删除的索引,依次使用 splice() 方法删除数组中对应索引处的元素。最后,我们输出修改后的数组

更简洁的方法是使用数组的 filter() 方法。filter() 方法创建一个新数组,其中包含满足条件的所有元素。你可以使用 filter() 方法来过滤掉那些不需要删除的索引处的元素

var array = [1, 2, 3, 4, 5];
var indexesToDelete = [1, 3]; // 需要删除的索引

// 使用 filter() 方法过滤掉不需要删除的索引处的元素
array = array.filter((element, index) => !indexesToDelete.includes(index));
console.log(array); // 输出 [1, 3, 5]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 在上面的示例中,我们使用 filter() 方法来过滤掉不需要删除的索引处的元素。在 filter() 方法的回调函数中,我们检查当前索引是否包含在 indexesToDelete 数组中,如果不包含,则返回 true,表示保留该元素;如果包含,则返回 false,表示删除该元素。最后,我们重新赋值给 array 变量,得到修改后的数组。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/757597
推荐阅读
相关标签
  

闽ICP备14008679号