要从不同的索引中删除数组中的元素,可以使用多种方法。以下是几种常见的方法:
splice
方法splice
方法可以在数组中添加/删除项目,然后返回被删除的项目。
let arr = [1, 2, 3, 4, 5];
let indexesToRemove = [1, 3]; // 要删除的索引
indexesToRemove.sort((a, b) => b - a); // 从大到小排序,防止索引变动影响
indexesToRemove.forEach(index => {
arr.splice(index, 1);
});
console.log(arr); // 输出: [1, 3, 5]
filter
方法filter
方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。
let arr = [1, 2, 3, 4, 5];
let indexesToRemove = [1, 3]; // 要删除的索引
let newArr = arr.filter((_, index) => !indexesToRemove.includes(index));
console.log(newArr); // 输出: [1, 3, 5]
reduce
方法reduce
方法对数组中的每个元素执行一个 reducer 函数(升序执行),将其结果汇总为单个返回值。
let arr = [1, 2, 3, 4, 5];
let indexesToRemove = [1, 3]; // 要删除的索引
let newArr = arr.reduce((acc, val, index) => {
if (!indexesToRemove.includes(index)) {
acc.push(val);
}
return acc;
}, []);
console.log(newArr); // 输出: [1, 3, 5]
这些方法可以用于各种场景,例如:
希望这些信息对你有所帮助!
云+社区技术沙龙[第8期]
腾讯技术创作特训营第二季第2期
云+社区技术沙龙[第14期]
“中小企业”在线学堂
Elastic 中国开发者大会
领取专属 10元无门槛券
手把手带您无忧上云