学习笔记:常见数组方法

103 阅读2分钟

1.forEach场景 :遍历数组

forEach方法特点 :

(1)遍历次数 = 数组长度

(2)本身没有返回值

let arr = [10,20,30,40,50]

let res = arr.forEach((value,index)=>{

   console.log(index,value)
   
})

console.log(res)

2.findIndex场景 : 获取某个元素的下标

forEach方法特点 :

(1)应用场景与indexOf()类似,但是findIndex一般用于对象数组 (2)本身返回值 : 有元素-元素下标 ; 没有元素-固定值 - 1 (4)回调函数内部return : 返回true,循环立即结束,并且 findIndex 方法返回当前index ; 返回false,循环继续,如果遍历完数组还是没找到,则得到默认返回值

let arr = [{ name'xs',age:18},{name'xw',age:20}, {name'xl  ',age:19}]

let res = arr.findIndex((value,index)=>{
    
})

console.log(res)

3.reduce方法 : 给每一个元素执行一次回调

reduce应用场景 : 数组求和 , 求数组最大值

let res = arr.reduce((sum,value,index) => {return sum + value})
   - res 返回值是最后一次sum的结果
  // sum : 上一次回调的返回值,默认是第一个元素值
  // value : 当前元素值,默认从1下标元素开始
  // index : 当前下标,默认从1开始

4.map 方法 : 对数组的每一个元素进行映射处理,得到一个全新数组

map方法特点 :

(1)遍历次数 = 数组长度

(2)本身返回值 : 映射之后的新数组

(3)回调函数内部 return : 返回映射之后的值

let arr = [10,20,30,40,50]
let newArr = arr.map( (value,index)=>{
   console.log(index,value)
      return value*2
})

console.log(newArr)

5.filter 方法 : 筛选数组,找出数组中符合条件的元素

map方法特点 :

(1)遍历次数 = 数组长度

(2)本身返回值 : 映射之后的新数组

(3)回调函数内部 return : 返回true,满足筛选条件,放入新数组中 ; 返回false,不满足筛选条件,不放入新数组

let arr = [10,20,30,40,50]
//找出数组中的偶数
let res = arr.filter(v => v % 2 == 0 )

console.log(res)