检查数组是否包含字符串的一部分和索引#

时间:2014-08-28 16:55:15

标签: javascript jquery

myArr = ["blue", "red", "orange", "green"]

我想知道如何检查数组是否包含字符串的一部分和索引#

在网上看到这个,但索引#没有显示位置,除非它是数组中的全名。

alert(className.indexOf("oran"));

1 个答案:

答案 0 :(得分:8)

您可以使用some检查是否至少有一个元素验证您的情况:

var hasSome = myArr.some(function(v){ return v.indexOf("oran")>=0 })

如果您需要索引,则反向for循环是更简单的解决方案:

for (var i=myArr.length; i--;) {
     if (myArr[i].indexOf("oran")>=0) break;
}

循环之后,如果没有元素匹配,i-1,如果匹配,则为索引。

请注意,在ES6(下一版本的JavaScript)中,您将在数组上使用findfindIndex方法,在字符串上使用contains方法,这意味着您将拥有能够做到

var i = myArr.findIndex(v ==> v.contains("oran"));