假设我有一个数组= [0,8,5]
知道8是否在这个内部的最快方法是什么...例如:
if(array.contain(8)){
// return true
}
我发现了这个:Fastest way to check if a value exist in a list(Python)
并且:fastest way to detect if a value is in a set of values in Javascript
但这不能回答我的问题。谢谢。
答案 0 :(得分:9)
使用indexOf()
检查值是否存在
array.indexOf(8)
示例代码,
var arr = [0,8,5];
alert(arr.indexOf(8)); //returns key
对于IE支持
//IE support
if (!Array.prototype.indexOf) {
Array.prototype.indexOf = function(obj, start) {
for (var i = (start || 0), j = this.length; i < j; i++) {
if (this[i] === obj) { return i; }
}
return -1;
}
}
var arr = [0,8,5];
alert(arr.indexOf(8))
答案 1 :(得分:4)
您可以使用indexOf()函数
var fruits = ["a1", "a2", "a3", "a4"];
var a = fruits.indexOf("a3");
输出结果为:2
答案 2 :(得分:0)
您可以使用indexOf
,也可以尝试:
$.inArray(value, array)
答案 3 :(得分:0)
phpjs有一个很好的php的in_array函数的javascript端口,你可以用它
http://phpjs.org/functions/in_array/
参见示例:
in_array('van', ['Kevin', 'van', 'Zonneveld']);