gpt4 book ai didi

javascript - 如何通过单一方法从不同索引的数组中删除元素?

转载 作者:行者123 更新时间:2023-12-01 03:58:34 25 4
gpt4 key购买 nike

我正在尝试通过将indexArr(包含要删除的索引)传递给方法来编写删除元素的逻辑:

var a = [0,1,2,3,4,5];
Array.prototype.removeElem = function(indexArr){
this.filter(function(value,index,arr){
return indexArr.indexOf(index)>-1 ? arr[index] = undefined:false
}
});
}

a.removeElem([2,3]); //passing indexes in form of array
console.log(a.join('').split('')); //removing undefined values

如您所见,我在执行 removeElem() 方法后删除 undefined 值,但我想在方法本身中执行此操作。

最佳答案

要修改原始数组,可以使用 while() 从最后一个索引到第一个索引的循环结合 splice() 方法:

var a = [0,1,2,3,4,5];

Array.prototype.removeElem = function(indexArr){
var length = this.length;
while(length--) {
if(indexArr.indexOf(length) > -1) {
this.splice(length, 1);
}
}
}


console.log(a.removeElem([0,1]));
console.log(a);

关于javascript - 如何通过单一方法从不同索引的数组中删除元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42409036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com