根据id数组,删除对象数组中的指定项

题目描述

var arr = [1,2];
var allArr = [{id:1,name:"s"},{id:2,name:"ds"},{id:3,name:"gg"}]
var finalArr = [];


// 最终结果
finalArr = [{id:3,name:"gg"}];
阅读 7.9k
6 个回答

楼主,你好!
参考下:

var arr = [1,2];
var allArr = [{id:1,name:"s"},{id:2,name:"ds"},{id:3,name:"gg"}]


// 最终结果
// finalArr = [{id:3,name:"gg"}];

var finalArr = allArr.filter((item) => !arr.includes(item.id));

如有帮助,麻烦点击下采纳,谢谢~

allArr.splice(2,2)就行了

这个是不是你要的

var arr = [1,2];
    var allArr = [{id:1,name:"s"},{id:2,name:"ds"},{id:3,name:"gg"}]
    var finalArr = [];
    for(var i = 0, max = allArr .length; i < max; i++ ){
        var newArrid = newArr[i].id;
        if(newArrid != arr[i]){
            finalArr.push(newArr[i]);
            
        }
    }
    console.log(finalArr);
var finalArr = allArr.filter(i => !arr.includes(i.id))
var arr = [1, 3];
var allArr = [
  { id: 1, name: "s" },
  { id: 2, name: "ds" },
  { id: 3, name: "gg" }
];
// var finalArr = [];

let finalArr = allArr.filter(val => !arr.includes(val.id));

console.log(finalArr, "finalArr");

// allArr.forEach((val, index) => {
//   if (arr.includes(val.id)) allArr.splice(index, 1);
// });
// console.log(allArr, "allArr");

马克马克马克

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题