forEach用法与map用法区别

forEach是ES5中操作数组的一种方法,主要功能是遍历数组,forEach方法对数组的每个元素执行一次提供的函数。map用法与forEach相似,map方法的即是“映射”,原数组被“映射”成对应新数组。

1.forEach方法中的function回调有三个参数

第一个参数是遍历的数组内容,

第二个参数是对应的数组索引,

第三个参数是数组本身。方法执行是没有返回值的,对原来数组也没有影响。

即:

[].forEach(function(value,index,array){ 
  //code something

2.forEach例子

var arr = [1,2,3,4];
arr.forEach(function(value,index,array){ 
    array[index] == value; //结果为true
    sum+=value;  
    });
 console.log(sum);    //结果为 10

3.map方法

map的回调函数中支持return返回值,并不影响原来的数组,只是相当于把原数组克隆一份,把克隆的这一份的数组中的对应项改变。

4.map例子

var arr = [1,2,3,4];
var newarr=arr.map(function(val,index,arr){ 
  console.log(arr[index]==val); // ==> 结果为true
  return val*val;           
})
console.log(newarr);  // ==> 结果为[1, 4,9, 16]
    原文作者:前端纸飞机
    原文地址: https://blog.csdn.net/qq_32442973/article/details/120884233
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞