如何检查给定字符串是否已存在于JavaScript中的数组或列表中?

How to check whether a given string is already present in an array or list in JavaScript?

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicates:
Javascript - array.contains(obj)
Best way to find an item in a JavaScript Array ?

例如,我想检查列表或地图中的单词"the"。有什么内置功能吗?


如果找不到元素,Array.indexOf(element)返回-1,否则返回其索引


在JavaScript中,您有数组(列表)和对象(映射)。

它们的文字版本如下:

1
2
var mylist = [1,2,3]; // array
var mymap = { car: 'porche', hp: 300, seats: 2 }; // object

如果要确定数组中是否存在值,只需循环它:

1
2
3
4
5
6
for(var i=0,len=mylist.length;i<len;i++) {
  if(mylist[i] == 2) {
     //2 exists
     break;
   }
}

如果要确定一个映射是否有某个键或它是否有一个具有某个值的键,您所要做的就是这样访问它:

1
2
3
4
5
6
7
if(mymap.seats !== undefined) {
  //the key 'seats' exists in the object
}

if(mymap.seats == 2) {
  //the key 'seats' exists in the object and has the value 2
}