在js操作中会遇到有个字符串要判断是否存在一个数组中,在C#中可以使用Linq或者Contains来筛选而在js中我们选择了inArray来筛选

在jquery中存在一个inArray来判断数组中是否存在某个值

$.inarray(value,array,[Index]):确定第一个参数在数组中的位置(如果没有找到则返回 -1,如果有则返回value的位置 )。


参数

参数
描述
value
任意类型用于查找的值。
array
Array类型指定被查找的数组。
Index
可选/Number类型指定从数组的指定索引位置开始查找,默认为 0。


返回值

$.inArray()函数的返回值为Number类型,返回指定值在数组中的索引。如果没有找到,则返回 -1。

如果数组中存在多个相同的值,则以查找到的第一个值的索引为准。

注意:如果要判断数组中是否存在指定值,你需要通过该函数的返回值不等于(或大于)-1来进行判断。


举个例子:


var mobileArr = ["jquery", "javascript", "sql"];
var rs = $.inArray("jquery", mobileArr);  //返回0
var rs1 = $.inArray("C#",mobileArr); //返回-1
var rs2 = $.inArray("jquery",mobileArr,1) // 返回-1

不存在返回 -1   存在返回 index