我想做一个数组来缩短我当前的string.includes() || string.includes()...
代码,因为检查许多单词会使列表变长,但我找不到用数组复制这一点的简单方法。
array.includes(string)
似乎只是专门检查字符串,所以如果字符串中也有其他东西,它就不会工作,这与我试图做的几乎相反。
非常感谢您的帮助。
你可以试试这个
const myString = "Hello";
const arrayOfStrings = ["H", "U", "W"];
const hasString = arrayOfStrings.some(el => myString.includes(el))
console.log(hasString)
您似乎不仅想缩短string.includes() || string.includes()...
,而且还想将作为子字符串的所有字符串输出为集合,您可以使用map
并过滤falsey
输出,如下所示:
let array = ["ab", "a", "abc", "abd", "cd", "ce"];
let res = array.map(e=>"abcdef".includes(e)?e:null).filter(e=>e!=null)
console.log(res);
如果你仍然想要真/假输出,你可以使用reduce,如下所示:
let array = ["ab", "a", "abc", "abd", "cd", "ce"];
let res = array.map(e=>"abcdef".includes(e)).reduce((a,b)=>a||b,false)
console.log(res);