在一个数组中过滤掉另一个数组的中的数据

4 篇文章 0 订阅
3 篇文章 0 订阅

arrA:[

     {'user_id': 11, 'user_name': '张三', isObject: false, ...},

     {'user_id': 55, 'user_name': '李四', isObject: false, ...},

     {'user_id': 77, 'user_name': '陈一', isObject: false, ...}

]

arrB:[ 

     {'user_id': 11, 'user_name': '张三'},

     {'user_id': 22, 'user_name': '郑平'},

     {'user_id': 33, 'user_name': '蒋湖'},

     {'user_id': 44, 'user_name': '黄历'},

     {'user_id': 55, 'user_name': '李四'},

     {'user_id': 66, 'user_name': '朱二'},

     {'user_id': 77, 'user_name': '陈一'}

]

目标得到数组B:[

     {'user_id': 22, 'user_name': '郑平'},

     {'user_id': 33, 'user_name': '蒋湖'},

     {'user_id': 44, 'user_name': '黄历'},

     {'user_id': 66, 'user_name': '朱二'}

]

根据user_id匹配,将B中的A过滤掉。

let new_arrA = [];
arrA.map((item) => {
    new_arrA.push(item.user_id);
});
// console.log(new_arrA); ['11','55','77']


let new_arrB = [];
arrB.map((item) => {
    if (new_arrA.indexOf(item.user_id) < 0) { // 这行就是最主要的代码
        new_arrB.push(item);
    }
});
// console.log(new_arrB); 
// [{'user_id': 22, 'user_name': '郑平'},

     {'user_id': 33, 'user_name': '蒋湖'},

     {'user_id': 44, 'user_name': '黄历'},

     {'user_id': 66, 'user_name': '朱二'}]

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值