JavaScript中的map与forEach方法有何不同?

10 min read

mapforEach 都是 JavaScript 数组的方法,但它们的用途略有不同。

  1. forEachforEach 用于为数组中的每个元素执行一次提供的函数,对于每个元素,都会执行一次函数。因此,forEach 无法改变原始数组,也就是说,它不会返回任何值。

示例:

const arr = [1, 2, 3];

arr.forEach((element) => console.log(element));
// 输出:1 2 3
  1. mapmap 也会为数组中的每个元素执行一次提供的函数,但它会创建一个新数组,新数组的每个元素都是原始数组元素执行函数后的返回值。

示例:

const arr = [1, 2, 3];

const newArray = arr.map((element) => element * 2);
console.log(newArray);
// 输出:[2, 4, 6]

总之,如果你想对数组进行遍历操作并且不需要返回一个新的数组,那么可以使用 forEach。如果你需要返回一个新的数组,则应使用 map