1. 程式人生 > 其它 >js中陣列遍歷,篩選出需要的陣列

js中陣列遍歷,篩選出需要的陣列

技術標籤:JavaScriptjsjavascriptjquery

js中陣列遍歷,篩選出需要的陣列

filter()遍歷陣列

  1. filter遍歷陣列會返回一個新陣列
  2. 迴圈次數就是陣列的長度
let arr = [1,2,3,4,5]
let newArr = arr.filter((item,index) => {
	return item>3
})
consolo.log(newArr)

some()函式進行迴圈

  1. 符合條件時返回ture,否則返回false
  2. 迴圈次數小於等於陣列長度
  3. 當條件滿足時,就會終止迴圈,並返回ture,如果沒有滿足判斷條件的,會遍歷整個陣列
let arr =
[1,2,3,4,5] let newArr = arr.some((item,index) => { return item>3 }) console.log(newArr)

map()迴圈

  1. 會遍歷整個陣列的迴圈
  2. 會得到一個新的陣列,返回陣列的項是什麼取決於map函式中的呼叫方法
let arr=[1,2,3,4,56]
let newArr = arr.map((item,index) => {
	return item === 1
})
console.log(newArr)


map函式結果

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() 函式

  1. 有返回值,符合條件會返回一個數組中的那個項,如物件
  2. 迴圈次數小於或等於陣列長度
b=[{a:1},{b:2},{c:3}]
b.find((item,index) => {return item.b===2})

結果:{b: 2}

findIndex()

  1. 會返回符合條件的那個項的索引值,否則返回-1
  2. 迴圈次數小於或等於陣列長度
b=[{a:1},{b:2},{c:3}]
b.
findIndex((item,index) => {return item.b===2})

結果:1

every()

  1. 用於檢測所有陣列項中是否都符合某個條件,如果都符合則返回true,只要有一項不符合就返回false並終止遍歷
  2. 迴圈次數小於或等於陣列長度
a=[2,2,2,2,3]
a.every((item,index) => {
	return item===2
})

結果:false

some()函式和every()函式類似