javascript判斷數組是否包含了指定的元素


jQuery寫法:

var arr = [ "xml", "html", "css", "js" ];
$.inArray("js", arr);  //返回 3,

如果不包含在數組中,則返回 -1;

JS寫法:

1.正則表達式

js 中判斷某個元素是否存在於某個 js 數組中,相當於 PHP 語言中的 in_array 函數。

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

用法如下

var arr=new Array([‘b',2,‘a‘,4]);

arr.in_array('b');//判斷'b'字符是否存在於 arr 數組中,存在返回true 否則false,此處將返回true

注:此函數只對字符和數字有效;

2.遍歷

 

Array.prototype.in_array = function (element) {
  for (var i = 0; i < this.length; i++) {
    if (this[i] == element) {
      return true;
  }
 }
  return false;
}

 

用法如下:

var arr=new Array(["b",2,"a",4,"test"]);

arr.in_array('test');//判斷 test 字符串是否存在於 arr 數組中,存在返回true 否則false,此處將返回true

3.indexOf()

function IsInArray(arr,val){
  var testStr=','+arr.join(",")+",";
  return testStr.indexOf(","+val+",")!=-1;

用法如下:

var arr=new Array(["b",2,"a",4,"test"]);

IsInArray(arr,'test');//判斷 test 字符串是否存在於 arr 數組中,存在返回true 否則false,此處將返回true

注:IE的Array並沒有indexOf這個方法


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM