如何检查以下值是否包含javascript数组中的字符串之一?

问题描述

我有一个数组

  virtual void GetStats(
      rtc::scoped_refptr<RtpReceiverInterface> selector,rtc::scoped_refptr<RTCStatsCollectorCallback> callback) 

let items = ['hat','shirt','glasses','jeans'] 一个具有示例“ black-hat”值的属性

如何检查this.mainItem是否包含数组中的字符串之一,以及是否有mtach返回该数组项,否则返回“空字符串”?

解决方法

您可以使用find方法:

items.find((item) => this.mainItem.includes(item)) || ""
,

您可以使用.filter()函数:

items.filter((item) => this.mainItem.includes(item))// will return Array [ "hat" ]
,

您可以使用布尔值:

items.findIndex((el) => this.mainItem.includes(el)) !== -1

我们使用新的findIndex方法,并检查main tiem是否包含该元素。如果不是,则函数返回-1