JS数组中的find、filter、forEach、map

1、find

find()方法返回数组中符合条件的第一个元素,没有的话,返回undefined数组

let arr = [1,2,3,4,5,6,7];
let result = arr.find(function (item) {
  return item > 4;
} )
console.log(result);//5
console.log(arr);//[1,2,3,4,5,6,7]
复制代码

2、filter

filter( )方法返回一个新数组,用来筛选数组中符合条件的全部元素,若是没有找到符号条件的,则返回一个空数组。markdown

let arr = [1,2,3,4,5,6,7];
let result = arr.filter(function (item) {
  return item > 4;
} )
console.log(result);//[5,6,7]
console.log(arr);//[1,2,3,4,5,6,7]
复制代码

3、forEach

forEach( )方法用来对数组中的每个元素执行一次回调函数,可是没有返回值(或返回值时undefined,即便回调函数中写了return,返回值仍是undefined);函数

forEach() 对于空数组是不会执行回调函数的。ui

let arr = [1,2,3,4,5,6,7];
let sum = 0;
let result = arr.forEach(function (item) {
   sum += item ;
} )
console.log(result);//undefined
console.log(arr);//[1,2,3,4,5,6,7]
console.log(sum);//28
复制代码

4、map

map( )方法返回一个先数组,用来对数组中的元素经过回调函数进行过滤和处理,把处理后的结果放在一个新数组返回(若是没有返回值,新数组的每个元素都为undefined);spa

let arr = [1,2,3,4,5,6,7];
let result = arr.map(function (item) {
  return item*2;
} )
console.log(result);//[2,4,6,8,10.12.14]
console.log(arr);//[1,2,3,4,5,6,7]
复制代码