forEach 遍历所有的元素,没有返回值, return 不会终止循环,只会结束本次循环,进行下一轮。
let ary = [
{ name: ‘aa‘, age: 10 },
{ name: ‘bb‘, age: 11 },
{ name: ‘cc‘, age: 12 },
{ name: ‘dd‘, age: 13 },
{ name: ‘ee‘, age: 14 },
]
let ary1 = []
let re = ary.forEach((item, index, list) => {
if (item.name === ‘aa‘) {
return
}
ary1.push(item.name)
})
console.log(ary1) // ["bb", "cc", "dd", "ee"]
console.log(re) // undefined
console.log(ary) // (5)?[{…}, {…}, {…}, {…}, {…}]
let ary2 = ary.filter((item, index, list) => {
return item.age > 12
})
console.log(ary2) // (2)?[{…}, {…}]
console.log(ary) // (5)?[{…}, {…}, {…}, {…}, {…}]
let isAge = ary.every((item, index, list) => {
console.log(index) // 0
return item.age > 11
})
console.log(isAge) // false
let existAge = ary.some((item, index, list) => {
console.log(index) // 0 1 2
return item.age > 11
})
console.log(existAge) // true
let ary3 = ary.map((item, index, list) => {
return item.age + 10
})
console.log(ary3) // [20, 21, 22, 23, 24]
console.log(ary) // (5)?[{…}, {…}, {…}, {…}, {…}]
数组的五中遍历方式(forEach,filter,map,some,every)
原文:https://blog.51cto.com/13701875/2447512