一、從JS數組中是否包含某元素
JavaScript中可以使用indexOf()方法判斷數組是否包含某個元素。這個方法會在數組中查找元素,並返回它的下標位置。如果元素不存在,則返回-1。
let arr = [1, 2, 3, 4, 5]; let check = arr.indexOf(3); if(check !== -1){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
上面的代碼中,使用indexOf()方法查找數組中是否存在3這個元素。如果返回的結果不是-1,則說明數組中存在3這個元素。
二、數組是否包含某元素JS
在ES6中,可以使用includes()方法來檢查數組是否包含某個元素。和indexOf()方法類似,includes()方法也會返回一個布爾值(true/false)。
let arr = [1, 2, 3, 4, 5]; let check = arr.includes(3); if(check){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
上面的代碼使用includes()方法查找數組中是否存在3這個元素。如果返回結果為true,則說明數組中存在這個元素。
三、判斷數組是否包含某個值
另一個判斷數組是否包含某個元素的方法是使用some()方法。這個方法會遍曆數組中的所有元素,檢查它們是否符合條件,如若找到了符合條件的元素,則返回布爾值true。
let arr = [1, 2, 3, 4, 5]; let check = arr.some(item => item === 3); if(check){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
這個例子中,我們使用some()方法和箭頭函數來遍曆數組中的元素,檢查數組中是否存在3這個元素。如果find()方法返回true,就說明數組中存在3這個元素。
四、數組是否包含某元素
另一種方法是使用filter()和length屬性結合來判斷數組中是否包含某個元素。
let arr = [1, 2, 3, 4, 5]; let check = arr.filter(item => item === 3).length > 0; if(check){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
這個例子中,我們使用filter()方法和length屬性來判斷數組中是否有某個元素。如果filter()方法返回的新數組長度大於0,則說明原數組中有這個元素。
五、判斷數組中是否含有某元素
使用reduce()方法也可以判斷數組中是否含有某個元素。
let arr = [1, 2, 3, 4, 5]; let check = arr.reduce((acc, val) => { if(val === 3){ return true; } else{ return acc; } }, false); if(check){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
這個代碼中,我們使用reduce()方法和初始值false來遍曆數組元素,檢查數組中是否存在3這個元素。如果發現這個元素,就返回true。否則,返回acc。
六、前端判斷數組是否包含某元素
在前端開發中,我們有時會需要判斷數組中是否包含某個元素。除了上文已經介紹的方法之外,還可以使用ES6的includes()方法。
let arr = ['apple', 'banana', 'pear']; let check = arr.includes('banana'); if(check){ console.log("數組中有banana這個元素"); } else{ console.log("數組中沒有banana這個元素"); }
這個例子中,我們使用includes()方法查找數組中是否出現了「banana」這個元素。如果返回的結果為true,則說明該數組中含有這個元素。
七、數組包含某個元素
使用RegExp正則表達式也可以判斷數組是否包含某個元素。下面是一段例子代碼。
let arr = [1, 2, 3, 4, 5]; let check = /3/.test(arr); if(check){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
在這個例子中,我們使用RegExp.test()方法測試數組中是否有3這個元素。如果返回true,則說明存在這個元素。
八、查找數組是否包含某個元素
最後一個例子中,我們介紹了一種使用RegExp的方法來判斷數組是否包含某個元素。相比之下,這種方法的效率確實不如其他方法。如果數組很大,這種方法可能會很慢。
建議使用其他方法來判斷數組是否包含某個元素,如上文介紹的indexOf(),includes(),some()和filter()。
代碼示例
let arr = [1, 2, 3, 4, 5]; // 使用indexOf()方法 let check1 = arr.indexOf(3) !== -1; if(check1){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); } // 使用includes()方法 let check2 = arr.includes(3); if(check2){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); } // 使用some()方法 let check3 = arr.some(item => item === 3); if(check3){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); } // 使用filter()方法 let check4 = arr.filter(item => item === 3).length > 0; if(check4){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); } // 使用reduce()方法 let check5 = arr.reduce((acc, val) => { if(val === 3){ return true; } else{ return acc; } }, false); if(check5){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); } // 使用includes()方法 let fruits = ['apple', 'banana', 'pear']; let check6 = fruits.includes('banana'); if(check6){ console.log("數組中有banana這個元素"); } else{ console.log("數組中沒有banana這個元素"); } // 使用正則表達式 let check7 = /3/.test(arr); if(check7){ console.log("數組中有3這個元素"); } else{ console.log("數組中沒有3這個元素"); }
原創文章,作者:LUBB,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/132921.html