JS搜索数组

时间:2015-07-20 16:42:31

标签: javascript jquery text-search

最初,问题是我必须得到一些通知,当用户在JqueryUI Autocomplete中输入的术语(项目中的城市名称)与集合中的任何内容不匹配时(输入“My Sweet City”并且它与[莫斯科]不匹配,纽约,北京])。所以我将重写我的代码以手动搜索数组,但我有一个问题 - 如何在数组中搜索自动完成它?

1 个答案:

答案 0 :(得分:1)

有几种方法可以做到这一点。如果它很简单,您可以使用indexOf来找到匹配的内容:

var arr = ["one", "two", "three", "four", "five"];
var inputText = "three";

if (arr.indexOf(inputText) > -1) {
    alert("item found");
}
else {
    alert("item not found");
}

另一种选择(更有效的选择)是使用常规的爆炸并循环遍历数组来查找匹配(由Aleadam提及):

function searchStringInArray (str, strArray) {
    for (var j=0; j<strArray.length; j++) {
        if (strArray[j].match(str)) return j;
    }
    return -1;
}