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

Posted yxknotes

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了map()和foreach()区别------详细用法介绍相关的知识,希望对你有一定的参考价值。

1.foreach.用法详解

//forEach使用姿势一:
var numbers = [1, 2, 3, 4, 5],
    sum = 0;
    numbers.forEach(function(item) 
    sum += item;
);
console.log(sum); //结果:15

//forEach使用姿势二:
var numbers = [1, 2, 3, 4, 5],
  sum = 0;
function adder(item) 
  sum += item;

//直接调用adder函数,注意不加括号
numbers.forEach(adder);
console.log(sum); //结果:15

注意:map和forEach区别是:map有返回值而且必须return返回一个数组才行,而forEach没有返回值可直接打印结果。

2.map()用法详解

map需要返回值,如果不给return,默认返回undefined,map返回的是一个新数组。

应用场景1:假定有一个数值数组A,将A数组的数值以双倍的形式放到B数组。

var numbers = [1, 2, 3];
var newNumbers1 = numbers.map(function(item) 
  return item * 2;
);
console.log(newNumbers1); // 结果:[2,4,6]

应用场景2:假定有一个对象数组A,将A数组中对象某个属性的值存储在B数组中。

var cars = [
  
    model: "mini",
    price: 200
  ,
  
    model: "nio",
    price: 300
  
];
var prices = cars.map(function(item) 
  return item.price;
);
console.log(prices); //结果:[200, 300]

以上是关于map()和foreach()区别------详细用法介绍的主要内容,如果未能解决你的问题,请参考以下文章

map和forEach的区别和用法

map()和forEach()的区别和理解

map()和forEach()的区别和理解

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

.map、.every 和 .forEach 之间有啥区别?

JavaScript中Map和ForEach的区别