📜  reduce 方法 - Javascript (1)

📅  最后修改于: 2023-12-03 14:47:03.154000             🧑  作者: Mango

reduce 方法 - JavaScript

在 JavaScript 中,reduce() 方法用于对数组中的每个元素执行一个回调函数,并返回一个累积的结果。

语法
array.reduce(callback, initialValue)
  • callback 是一个函数,用于对数组中的每个元素执行操作。它可以接收四个参数:

    • accumulator:累加器,用于存储回调函数的返回值,并在每次迭代中更新。
    • currentValue:当前元素的值。
    • currentIndex:当前元素的索引。
    • array:原始数组对象。
  • initialValue 是可选的,用作第一次调用 callback 函数时的初始值。如果没有提供此参数,那么数组的第一个元素将作为初始值,并且 callback 函数将从第二个元素开始执行。

返回值

reduce() 方法返回回调函数最后一次执行后的返回值。

示例
const numbers = [1, 2, 3, 4, 5];

const sum = numbers.reduce((accumulator, currentValue) => {
  return accumulator + currentValue;
}, 0);

console.log(sum); // 输出 15

在上面的示例中,我们使用 reduce() 方法计算了数组 numbers 中所有元素的和。我们传递了一个匿名函数作为回调函数,并在每次迭代中将当前元素的值添加到累加器中。初始值为 0,因此回调函数的初始累加器值为 0。

注意事项
  • 如果数组为空且没有提供初始值,则 reduce() 方法将抛出一个 TypeError。
  • reduce() 方法对空数组不会执行回调函数,如果提供了初始值,则返回该初始值。
  • 回调函数中返回的累加器值将成为下一次迭代的累加器值。它对每个元素都会执行一次,直到数组中的所有元素都被遍历完毕。

更多关于 reduce() 方法的内容,请查阅 MDN 文档