可以使用filter和includes方法来实现:

let b = [
  {id: 1, name: 'a'},
  {id: 2, name: 'b'},
  {id: 3, name: 'c'},
  {id: 4, name: 'd'},
  {id: 5, name: 'e'}
];
let c = [
  {id: 2, name: 'b'},
  {id: 4, name: 'd'}
];

let result = b.filter(item => !c.map(c_item => c_item.id).includes(item.id));

console.log(result); // [{id: 1, name: 'a'}, {id: 3, name: 'c'}, {id: 5, name: 'e'}]

首先使用map方法获取c数组中所有id,然后使用includes方法判断b数组中每个元素的id是否在c数组中,如果不在则保留该元素。

js 将b数组中包含c数组的数据去除通过数组的的id字段

原文地址: https://www.cveoy.top/t/topic/f23n 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录