typescript Angular2 -属性不在值中的对象的过滤器数组

blmhpbnm  于 2023-02-17  发布在  TypeScript
关注(0)|答案(2)|浏览(122)

我在根据一组值过滤对象数组时遇到了一些问题:
这是要筛选的数组:

var items: Product[] = ... values

现在我声明一个要选择的产品数组:

var sel: Product[] = ... values

我必须应用过滤器的属性是idProduct,我该如何操作?
我需要这样的东西:

var query = items.filter( x => x.idProduct IN (List of idProduct from sel Array)

我该怎么做呢?
感谢支持

k3bvogb1

k3bvogb11#

您可以使用some查找sel中具有相同产品ID的任何产品

items.filter(i=> sel.some(s=> s.idProduct == i.idProduct));
z0qdvdin

z0qdvdin2#

根据其他答案,但使用Array.prototype.includes()
let query = items.filter(x => sel.map(y => y.idProduct).includes(x.idProduct));

相关问题