forEach用法与map用法区别

Posted 纸飞机Root

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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]

以上是关于forEach用法与map用法区别的主要内容,如果未能解决你的问题,请参考以下文章

js数组的map与forEach方法的区别及兼容性用法

JS中map()与forEach()的区别和用法

map、foreach、reduce、filters的用法及区别

map和forEach的区别和用法

map()和foreach()区别------详细用法介绍

Mybatis 学习---${ }与#{ }获取输入参数的区别Foreach的用法