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

熱點內容
蘋果售後換電池要多久 瀏覽:142
macbook12藍牙版本 瀏覽:276
手游一般是哪個編程工具開發的 瀏覽:365
安卓openvpn導入配置 瀏覽:858
k線組合app哪個好用 瀏覽:403
javaweb字典選擇框 瀏覽:362
剛裝的寬頻怎麼連接網路連接 瀏覽:909
鋼鐵雄心4陝西代碼 瀏覽:419
高效記住代碼的方法 瀏覽:390
envi5064位破解文件 瀏覽:808
fc超級馬里奧安卓版 瀏覽:134
內蒙古數控大賽用什麼軟體編程 瀏覽:148
2010word修改作者信息 瀏覽:386
linuxtomcat打不開 瀏覽:497
網路營銷與傳統營銷相比有哪些特點和優勢 瀏覽:404
圖片形式的文件怎麼弄 瀏覽:779
網頁文件的後綴 瀏覽:681
ipad錄屏視頻文件是什麼格式 瀏覽:30
atm網路是什麼 瀏覽:673
微博可以直接上傳pdf文件嗎 瀏覽:206

友情鏈接