以下为ChatGPT自动生成的解答,正确与否请自行判断。 也许你也可以从大家的发帖中找到想要的答案!

BFE.devAI解答 - 前端面试问题
15. `Array.prototype.forEach()` vs `Array.prototype.map()`

forEach()map() 都是数组方法,用于遍历数组中的每一个元素。但是它们的返回值不同。

forEach() 没有返回值,只是在每个元素上执行一个函数。而 map() 则会返回一个新数组,新数组的每个元素是原数组中对应元素执行函数后的结果。

举个例子,我们有一个数组 [1, 2, 3],然后我们希望将每个元素都乘以 2。使用 forEach()

const arr = [1, 2, 3];arr.forEach((item, index) => {  arr[index] = item * 2;});console.log(arr); // [2, 4, 6]

使用 map()

const arr = [1, 2, 3];const newArr = arr.map(item => item * 2);console.log(newArr); // [2, 4, 6]

可以看到,使用 map() 可以直接得到一个新数组,而不用通过修改原数组来实现。