如何在JavaScript中匹配数组与数组?

时间:2015-08-20 10:20:59

标签: javascript arrays regex search

我们在jQuery中有$.inArray(searchString, array)函数,但这将查找数组中存在的值中字符串的完全匹配。但是如何检查数组中的字符串如indexOf

例如,让我们取字符串“mark_zuck”,如果数组看起来像这样,["mark", "sheryl", "zuck"]。我们可以通过使用循环比较数组中的每个值和给定的字符串来实现这一点,如

for (i=0; i<array.length; i++) {
    searchString.indexOf(array[i]);
}

我正在寻找一种更好的方法来实现它。请帮忙。

2 个答案:

答案 0 :(得分:1)

array.filter(function(a){
  return searchString.indexOf(a) !== -1;
}

答案 1 :(得分:0)

您也可以使用array.some

var monthNames = ["mark", "sheryl", "zuck"];
var chk = 'mark_zuck';

var test = monthNames.some(function(e) {    
   return chk.indexOf(e);
});
console.log(test);

小提琴:http://jsfiddle.net/haqk2snr/