every与some

1 every()和some()的相同点

  • 遍历数组

  • 三个参数分别是item,index,arr(数组具体项,位置,数字本身)
  • 返回的都是布尔值

2 every()和some()的区别

  • every: 字面意思 ,遍历数组每一项,若全部true,则返回true(参考&&)
    let arr1 = [1, 1, 1, 1, 1,]
    let arr2 = [1, 1, 2, 1, 1,]
    let result1 = arr1.every((item) => {
        return item == 1 //true
    })
    let result2 = arr2.every((item) => {
        return item == 1 //false
    })
  • some:还是字面意思,遍历数组每一项,若某一项为true,则返回true(参考||)
    let arr1 = [1, 1, 1, 1, 1,]
    let arr2 = [1, 1, 2, 1, 1,]
    let result1 = arr1.some((item) => {
        return item == 1 //true
    })
    let result2 = arr2.some((item) => {
        return item == 1 //true
    })

filter

对数组中的每一项运行给定函数,返回该函数会返回true的项组成的集合

var result = number.filter(function(item,index,arr) {
    return (item > 3)
})
console.log(result) //[4,5,6]

forEach

对数组中的每一项运行给定函数,没有返回值
对项进行更改操作,不会对原数组产生影响

number.forEach(function(item,index,array) {
    if(index == 2) {
        item = 'qwe'
        console.log(index,item) //item == 'qwe'
    }
})
console.log(number) //原数组


var result = number.forEach(function(item,index,array) { 
    return item = 'qwe' 
}) 
console.log(result)//undefined

map

迭代,返回每次函数调用的结果组成的数组

var result = number.map(function(item,index,array) { 
    return item = 'qwe' 
}) 
console.log(result) // ['qwe','qwe','qwe','qwe','qwe','qwe','qwe','qwe','qwe']

正经的树袋熊
41 声望3 粉丝

一只前端老白