如何在Javascript中查询作为数组的对象的属性

时间:2019-03-12 19:35:56

标签: javascript arrays ecmascript-6

我有一个结果像这样的对象集

{
  category: "Chicken",
  description: "Lorem ipsum dolor",
  deliveryPortal: [0 => "City Pantry", 1 => "Feedr"]
} 

{
  category: "Beef",
  description: "Lorem ipsum dolor",
  deliveryPortal: [0 => "City Pantry"]
} 

{
  category: "Beef",
  description: "Lorem ipsum dolor",
  deliveryPortal: [0 => "Feedr"]
} 

我需要对filter item where deliveryPortal == 'given value'之类的对象列表进行过滤,其中'given value'是任何deliveryPortal值。问题是,当deliverPortal属性只有一个元素时,过滤器可以正常工作,但是当它与第一个对象一样具有多个元素时,它就无法工作。当deliveryPortal包含多个元素时,如何过滤?

1 个答案:

答案 0 :(得分:0)

您可以在内部数组上使用.includes

 array.filter(it => it.deliveryPortal.includes("City Pantry"))