foreach 和 map 方法都用于迭代数组,但它们有不同的目的并且具有不同的行为。
1.foreach方法
foreach 方法用于迭代数组的每个元素。它不会创建一个新数组;相反,它直接修改现有数组的元素。
const numbers = [1, 2, 3, 4, 5]; numbers.foreach(function(number) { console.log(number * 2); }); // output: // 2 // 4 // 6 // 8 // 10
foreach 当您的目的是迭代数组的每个元素而不需要创建新数组时使用。
2.地图方法
立即学习“Java免费学习笔记(深入)”;
另一方面,map 方法也用于迭代数组的每个元素,但它可以返回新的修改后的数组,而不更改原始数组
const numbers = [1, 2, 3, 4, 5]; const doubledNumbers = numbers.map(function(number) { return number * 2; }); console.log(doubledNumbers); // Output: [2, 4, 6, 8, 10]
当您的目的是返回新的修改后的数组时使用map方法
总结:
当您想要迭代数组并对每个元素执行副作用或操作而不创建新数组时,请使用 foreach。
当您想要迭代数组、使用函数转换其元素并使用转换后的值创建新数组时,请使用映射。
注意:- 请记住,这两种方法都会迭代数组中的每个元素,因此将为每个元素执行提供的函数。主要区别在于使用每种方法的目的和结果。