JavaScript查找数组是否存在指定元素
在新版本的浏览器中,数组存在indexOf方法,可以直接返回元素在数组的索引。 可以使用jQuery的jQuery.inArray()方法。 以下代码兼容了旧的浏览器。
//在数组array中搜索指定的值value,并返回此索引,如果不存在,返回-1 function inArray(value, array, fromIndex) { var d; var indexOf = [].indexOf; if (array) { if (!indexOf){ return indexOf.call(array, value, fromIndex); } for (d = array.length, fromIndex = fromIndex ? 0 > fromIndex ? Math.max(0, d + fromIndex) : fromIndex : 0; d > fromIndex; fromIndex++) { if (fromIndex in array && array[fromIndex] === value) { return fromIndex; } } } return -1; }
调用:
var arr = [2,32,4,5,6]; console.log(inArray(4, arr)); 输出 2