比如一个数组为
['a',23,-1],
另有一个变量v,如果v的值等于数组中的任何一个元素,则返回true;如果没有任何一个值与v相等,才返回false。。
除了遍历数组外,有其他快捷的办法吗?
有的,示例:
function IsInArray(arr,val){
var testStr=','+arr.join(",")+",";
return testStr.indexOf(","+val+",")!=-1;
}
var test=['a',23,-1];
alert(IsInArray(test,'a'));//true
alert(IsInArray(test,2));//false
alert(IsInArray(test,-1));//true
第一反应是:不遍历 怎么比 可定是要与数组中的数据进行比较的啊
['a',23,-1].indexOf(v) != -1
这个得分浏览器的,IE的Array并没有indexOf这个方法,所以,如果为了通用,还是遍历吧。。。