数组中的函数

112 阅读1分钟
  1. 判断数组中是否所有元素都符合要求 --- every()
var arr = [1,2,3,4,5]
var resBool = arr.every(function(elem,i,arr){
    //elem:获得当前正在遍历的元素值
    //i: 获得当前正在遍历的下标位置
    //arr: 获得调用every()时.前的数组对象arr
    //return 判断条件
    //返回false,退出every()函数执行,不在遍历,直接返回结果false,表示数组中不是所有元素都符合要求
    //返回true,继续执行循环遍历下一个元素,所有元素遍历完,返回true,表示数组中所有元素都符合要求
    return elem%2 == 0   //偶数
})
  1. 判断数组中是否包含符合要求的元素 --- some()
var arr = [1,2,3,4,5]
var resBool = arr.some(function(elem,i,arr){
    //返回true,退出some()函数执行,不在遍历,直接返回结果true,表示数组中包含符合要求的元素
    //返回false,继续执行循环遍历下一个元素,所有元素遍历完,返回false,表示数组中所有元素都不符合要求
    return elem%2 == 0   //偶数
})
  1. 判断数组升序 --- every()
var arr = [1,2,3,4,5]
var resBool = arr.every(function(elem,i,arr){
    //判断条件:每个元素值都<=下一个位置的元素值
    //注意: 最后一个位置(length-1)之前的元素都需要判断
    //最后一个元素直接返回true,不在进行判断
    return i<arr.length-1 ? elem <= arr[i+1] : true
})
  1. 数组遍历 --- forEach()
var arr = [1,2,3,4,5]
arr.forEach((item) => {
  console.log(item);
})
  1. 返回数组中满足条件的对象 --- find()
let arr = [
    {name: "a",id: 1},
    {name: "b",id: 2},
    {name: "c",id: 3},
    {name: "d",id: 4},
    {name: "e",id: 5}
]
let str = "c"
var findArr = arr.find(item => item.name === str)