【问题标题】:How to check whether a given string is already present in an array or list in JavaScript? [duplicate]如何检查给定的字符串是否已经存在于 JavaScript 的数组或列表中? [复制]
【发布时间】:2011-07-11 20:48:24
【问题描述】:

可能的重复:
Javascript - array.contains(obj)
Best way to find an item in a JavaScript Array ?

例如,我想检查列表或地图中的单词“the”。是否有任何内置功能?

【问题讨论】:

  • 查看链接的问题以获得一些非常好的答案。
  • Javascript 没有“列表”或“地图”。它有数组和对象。

标签: javascript


【解决方案1】:

在 javascript 中,您有数组(列表)和对象(地图)。

它们的文字版本如下所示:

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

如果你要判断一个值是否存在于数组中,只需循环遍历它:

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

如果你想知道一个地图是否有一个特定的键或者它是否有一个具有特定值的键,你所要做的就是像这样访问它:

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
}

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • Internet Explorer 8 及更早版本不支持 indexOf() 方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-10
    • 2013-05-20
    • 1970-01-01
    • 2021-10-03
    • 1970-01-01
    • 2018-01-29
    • 1970-01-01
    相关资源
    最近更新 更多