js中陣列遍歷,篩選出需要的陣列
阿新 • • 發佈:2021-01-06
技術標籤:JavaScriptjsjavascriptjquery
js中陣列遍歷,篩選出需要的陣列
filter()遍歷陣列
- filter遍歷陣列會返回一個新陣列
- 迴圈次數就是陣列的長度
let arr = [1,2,3,4,5]
let newArr = arr.filter((item,index) => {
return item>3
})
consolo.log(newArr)
some()函式進行迴圈
- 符合條件時返回ture,否則返回false
- 迴圈次數小於等於陣列長度
- 當條件滿足時,就會終止迴圈,並返回ture,如果沒有滿足判斷條件的,會遍歷整個陣列
let arr = [1,2,3,4,5]
let newArr = arr.some((item,index) => {
return item>3
})
console.log(newArr)
map()迴圈
- 會遍歷整個陣列的迴圈
- 會得到一個新的陣列,返回陣列的項是什麼取決於map函式中的呼叫方法
let arr=[1,2,3,4,5,6]
let newArr = arr.map((item,index) => {
return item === 1
})
console.log(newArr)
forEach()函式
類似於正常的for迴圈,可改變原來陣列中的內容;forEach函式中return會失效,因為foreach內部封裝的有callback
let a = [1,2,3]
a.forEach((item,index) => {
a[index] = item + 1
})
console.long(a)
結果:[2,3,4]
find() 函式
- 有返回值,符合條件會返回一個數組中的那個項,如物件
- 迴圈次數小於或等於陣列長度
b=[{a:1},{b:2},{c:3}]
b.find((item,index) => {return item.b===2})
結果:{b: 2}
findIndex()
- 會返回符合條件的那個項的索引值,否則返回-1
- 迴圈次數小於或等於陣列長度
b=[{a:1},{b:2},{c:3}]
b. findIndex((item,index) => {return item.b===2})
結果:1
every()
- 用於檢測所有陣列項中是否都符合某個條件,如果都符合則返回true,只要有一項不符合就返回false並終止遍歷
- 迴圈次數小於或等於陣列長度
a=[2,2,2,2,3]
a.every((item,index) => {
return item===2
})
結果:false
some()函式和every()函式類似