首頁  >  文章  >  後端開發  >  類似php的js數組的in_array函數自訂方法

類似php的js數組的in_array函數自訂方法

高洛峰
高洛峰原創
2016-12-22 13:43:341525瀏覽

PHP的陣列函數in_array()非常方便,可JS就不是了。其實我很不喜歡JS的陣列~ 

別說了,直接上方法 

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); 
}


這兩個都是可以的。其實就是一個形式,寫法不一樣而已。 

當然,還有一種方法是我比較推薦的, 

Array.prototype.S=String.fromCharCode(2); 
Array.prototype.in_array=function(e) 
{ 
var r=new RegExp(this.S+e+this.S); 
return (r.test(this.S+this.join(this.S)+this.S)); 
}

我個人比較喜歡這個,看不懂麼有關係,你只管用我寫好的代碼就成了,嘎嘎。 。 

模擬資料偵測一下就好 

var aa = new Array(1,2,&#39;aa&#39;,&#39;bbb&#39;,4,5); 
alert(aa.in_array(3)); 
alert(aa.in_array(&#39;aa&#39;));


更多類似php的js數組的in_array函數自訂方法相關文章請關注PHP中文網!


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn