我如何使用这个查找数组并匹配 javascript 中的数组?

how can i use this find array and match in array in javascript?

这是我的数据 - 如何在数组中找到 itemId。

let itemId=['001', '002', '003'] 
const data = [
  { id: 1, itemId: '001' },
  { id: 2, itemId: '002' },
  { id: 3, itemId: '003' },
];

这是我在 lodash 中的功能,但它不起作用。

  _.find(data, ['itemId',{$in: itemId}])

使用 _.intersectionWith() 获取 data 中的所有项目,其 id 出现在 itemId 数组中:

const itemId=['001', '003'];
const data = [
  { id: 1, itemId: '001' },
  { id: 2, itemId: '002' },
  { id: 3, itemId: '003' },
];

const result = _.intersectionWith(data, itemId, ({ itemId }, id) => itemId === id); 

console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.5/lodash.min.js"></script>

如果要过滤 data 数组中 itemId 包含在 Ids 数组中的所有项目,您可以尝试可用的支持 filter 方法而不使用 lodash https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

const itemIds=['001', '003'];
const data = [
  { id: 1, itemId: '001' },
  { id: 2, itemId: '002' },
  { id: 3, itemId: '003' },
];

console.log(data.filter(item=> itemIds.includes(item.itemId)));