導航:首頁 > 編程語言 > js判斷在數組中

js判斷在數組中

發布時間:2024-11-10 14:03:15

『壹』 js判斷是否在數組中

js判斷某個給定值是否在數組中的方法:

functionisInArray(arr,val){
vari,iLen;
if(!(arrinstanceofArray)||arr.length===0){
returnfalse;
}
if(typeofArray.prototype.indexOf==='function'){
return!!~arr.indexOf(val)
}
for(i=0,iLen=arr.length;i<iLen;i++){
if(val===arr[i]){
returntrue;
}
}
returnfalse;
}
isInArray([1,2,3,4,5],5);//true
isInArray([1,2,3,4,5],6);//false
isInArray([1,2,3,4,5],'5');//false

解釋:

arr instanceof Array判斷arr變數是否為數組,如果不是,則輸入參數有誤,返回false

arr.length === 0判斷數組長度是否為0,如果是0,則無論給出哪個值,都不在數組中,返回false

typeof Array.prototype.indexOf === 'function'用來判斷瀏覽器是否原生支持數組的indexOf方法,新版的瀏覽器都支持數組原生的indexOf,該函數用於獲取給定值在數組中的位置信息,如果存在返回首次出現的位置下標,不存在返回-1

arr.indexOf(val)使用原生的方法判斷val首次在arr中出現的下標,不存在返回-1

~為取反,只有在值為-1的時候,取反結果為0,其他情況都非零。

!!隱式轉換,轉為bool型,如果是0則轉換後為false,否則為true

後面用循環判斷數組每一個值與給定值是否完全相等(此處用===表示不僅數值相等,類型也要相等),如果相等返回true,否則循環結束後返回false

『貳』 js 怎麼判斷一個對象是否在數組里

|

js沒有直接判斷數組中是否存在某一值,最笨的方法是把數組變為鍵值對的對象,版如:

varobj={};
vararr=[1,2,3];
for(vari=0;i<arr.length;i++){
varv=arr[i];
if(obj[v]||權obj[v]==0){//這里判斷v是否已經添加到obj中,如果數組為數字時,需要注意if(0)為true
continue;//已經存在就跳過
}else{
obj[v]=v;
}
}

alert(obj[1]);//存在數組中,true
alert(obj[4]);//不存在數組中,false

『叄』 js判斷元素是否在數組中

直接用indexOf這個方法,方法如下array.indexOf(a)結果是int類型的a元素在數組的位置,如果不存在會返回-1,所以判斷這個值是不是-1就可以判斷元素是否在數組中了。不過ie下不支持indexOf,所以需要先申明:

Array.prototype.indexOf=function(val){
for(vari=0;i<this.length;i++){
if(this[i]==val){
returni;
}
}
return-1;
};

『肆』 js判斷一個值是否存在於一個js數組中

js 中判斷某個元素是否存在於某個 js 數組中,相當於 php 語言中的 in_array 函數。 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 arr=new Array(); arr.in_array('test');//判斷 test 字元串是否存在於 arr 數組中,存在返回true 否則false 註:此函數只能對字元和數字有效

『伍』 js怎麼判斷某個對象是否在數組中

用indexOf,假設你要判斷a在不在數組arr中:

if(arr.indexOf(a)!=-1){
console.log(a+'在數組中');
}

『陸』 JS中如何判斷數組中是否包含某一元素

可以直接使用數組的indexOf方法來判斷,如果元素存在於數組中,那麼返回元素在數組中的下標值,專如果不存在,屬那麼返回-1,但是該方法在某些版本的IE中是不起作用,所以建議使用jquery的inArray方法,該方法返回元素在數組中的下標,如果不存在與數組中,那麼返回-1,代碼如下所示:

/**
*使用jquery的inArray方法判斷元素是否存在於數組中
*@param{Object}arr數組
*@param{Object}value元素值
*/
functionisInArray2(arr,value){
varindex=$.inArray(value,arr);
if(index>=0){
returntrue;
}
returnfalse;
}

『柒』 js判斷某個元素是否在數組中在就返回索引位置

可以使用jquery的$.inArray(某元素,數組); 若是有此值返回此值的下標索引,沒有返回-1;
或者使用原生js的indexOf返回索引(ES5還是ES6的規范)。

閱讀全文

與js判斷在數組中相關的資料

熱點內容
工商銀行app人工服務在哪裡 瀏覽:19
怎麼讓文件中全體內容往下移 瀏覽:783
魔獸爭霸126版本轉換器 瀏覽:984
word2003精簡版下載 瀏覽:703
微博跳轉appstore 瀏覽:537
打開文件時許可權a代表什麼 瀏覽:155
昆侖通態導出數據文件名 瀏覽:338
手機遷移數據為什麼需要重新登錄 瀏覽:958
錄入資料庫的圖片如何更改 瀏覽:132
怎樣獲取郵箱帳號和密碼 瀏覽:809
怎麼通過js實現回到指定頁面 瀏覽:140
如何用網路簽字 瀏覽:552
三星電視拆機教程 瀏覽:19
創維怎麼連接網路 瀏覽:868
2007版word繪圖在哪裡 瀏覽:311
可以拍車牌的app是什麼 瀏覽:508
文件加個井字型大小什麼意思 瀏覽:155
怎麼刪除多重網路 瀏覽:999
求生之路2區域網聯機工具 瀏覽:827
說明文件結尾用什麼詞 瀏覽:578

友情鏈接