js一次从数组中的删除多个元素
一、filter
let list = [
{
id: 1,
name: 1,
},
{
id: 2,
name: 2,
},
{
id: 3,
name: 3,
},
{
id: 4,
name: 4,
}
]
let delIndexList = [0, 2]
var newList = list.filter((item, index) => {
return delIndexList.indexOf(index) == -1
})
console.log(newList)
二、for逆循环配合splice
let list = [
{
id: 1,
name: 1,
},
{
id: 2,
name: 2,
},
{
id: 3,
name: 3,
},
{
id: 4,
name: 4,
}
]
let delIndexList = [0, 2]
if (delIndexList.length !== 0) {
for (let i = delIndexList.length - 1; i >= 0; i--) {
list.splice(delIndexList[i], 1)
}
}
console.log(list)
三 生成新数组
let leftData = [1,2,3,4,5]
let targetKeys = [3,5]
let rightData = [6,7]
let leg = this.leftData.length
for (let i = leg - 1; i >= 0; i--) {
for (let j = 0; j < targetKeys.length; j++) {
if (leftData[i]) {
if (leftData[i] == targetKeys[j]) {
rightData.push(leftData[i])
leftData.splice(i, 1)
continue;
}
}
}
}