$.inArray("js", arr)JQuery判断数组中是否包含某个元素

时间:2022-08-30 13:40:50

急用看这里

var arr = [ "xml", "html", "css", "js" ];  
$.inArray("js", arr); //返回 3,
//如果不包含在数组中,则返回 -1;

细看看这里

需要注意的问题
重点一

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

重点二

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

重点三

如果要判断数组中是否存在指定值,你需要通过该函数的返回值不等于(或大于)-1来进行判断。
因为JavaScript将0视为false(即 0 == false, 但是 0 !== false),要检查在array中是否存在value, 你需要检查它是否不等于(或大于)-1。

重点四

值之间的比较是严格比较(愚人码头注:即,===或!==比较)。下面这段代码返回 -1 (没有找到) , 因为Integer数组中不可能找到一个字符串:

//在当前页面内追加换行标签和指定的HTML内容
function w( html ){
document.body.innerHTML += "<br/>" + html;
}


var arr = [ 10, 25, 3, 0, -3 ];

w( $.inArray( 25, arr ) ); // 1
w( $.inArray( -3, arr ) ); // 4
w( $.inArray( 10, arr ) ); // 0

// 数组中没有99
w( $.inArray( 99, arr ) ); // -1
// 数组中有数字10,但是没有字符串"10"
w( $.inArray( "10", arr ) ); // -1