js判断某个元素是否在数组中


前端

零度逍遥

2015-03-13 09:41:42

在项目开发中,偶尔会碰到要判断某元素是否在数组中的需求,从原理来来说,就是遍历整个数组,然后跟元素比较,判断是否相等,我们可以在数组原型上放一个方法。


Array.prototype.in_array = function(e){  
    for(i=0;i<this.length;i++){  
        if(this[i] == e)  
        return true;  
    }  
    return false;  
} 
或者可以这样:



Array.prototype.in_array = function(e){  
    for(i=0;i<this.length && this[i]!=e;i++);  
    return !(i==this.length);  
}  
这种方法其实是一样的,只是写法不一样,使用的方法非常简单,可以当做数组的原生方法来使用:



var arr=["a","b"];  
alert(arr.in_array("a")) // true