繁体   English   中英

如何检查字符串是否包含JavaScript中预定义数组中存在的子字符串?

[英]How to check whether a string contains a substring which is present in a predefined array in JavaScript?

找出JavaScript数组是否包含给定字符串的子字符串的最有效方法是什么?

例如,如果我有一个JavaScript数组

var a = ["John","Jerry","Ted"];

我需要将上述数组与字符串进行比较时返回true的条件:

"John Elton"

您可以使用.some().includes()方法:

 let arr = ["John","Jerry","Ted"]; let str = "John Elton"; let checker = (arr, str) => arr.some(s => str.includes(s)); console.log(checker(arr, str)); 

对于ES6:

var array = ["John","Jerry","Ted"];
var strToMatch = "John Elton"
array.some(el => strToMatch.includes(el))

万一您不能使用ES6:

 let arr = ["John","Jerry","Ted"]; let str = "John Elton"; var match = arr.some(function (name) { return str.indexOf(name) > -1; }); console.log(match); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM