在javascript中进行数组搜索

时间:2013-01-04 19:27:38

标签: javascript arrays search

我在javascript和变量中有一个数组,如下所示:

var numArr = ["one", "two", "three"];
var searchNum = "four";

我想在numArr中搜索“four”,如果不存在则执行一些语句......如

if (searchNum not in numArr)
{
    // do this
}

在没有编写大量搜索代码的情况下,javascript是否具有可以在任何数组中搜索并返回true或false的任何函数。

2 个答案:

答案 0 :(得分:8)

使用indexOf

if ( numArr.indexOf(searchNum) > -1 ) {

} else {}

如果找不到searchNum,该方法将返回-1。否则它将返回它找到它的索引。

答案 1 :(得分:0)

您也可以使用:

var result = [];
    for(i=0;i<listdata.names.length;i++){
        var n = listdata.names[i].toLocaleLowerCase();
        var s = x('input').value.toLocaleLowerCase();
        if(n.indexOf(s) != -1){result.push(listdata.names[i]);}
    }

这样我们就可以从输入值和现有数组中输出结果。

很少有人能理解,但是......:)