導航:首頁 > 編程語言 > 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判斷在數組中相關的資料

熱點內容
js驗證checkbox是否勾選 瀏覽:991
qq520紅包病毒是真的嗎 瀏覽:875
文件夾里的數字是什麼 瀏覽:118
us數據線怎麼連接車載音樂 瀏覽:320
撥號晶元程序寫入 瀏覽:847
掃描到電腦文件位置 瀏覽:941
微信里怎麼錄音文件 瀏覽:527
vba連接sql資料庫 瀏覽:943
iphone不用數據線怎麼連接電腦 瀏覽:865
分享文件文件名後有數字 瀏覽:940
6s4G網路怎麼設置 瀏覽:197
72版本神器知識新上限 瀏覽:92
logo程序下載 瀏覽:873
led屏幕編程是什麼意思 瀏覽:338
在linux如何修改文件內容 瀏覽:378
如何找出a列不等於b列的數據 瀏覽:472
金磚五國青年哪個app好 瀏覽:442
word2007橫向縱向混排 瀏覽:13
有什麼免費看英語單詞的app嗎 瀏覽:386
蘋果5s一直搜索網路 瀏覽:51

友情鏈接