reduce 第三个参数
时间: 2023-10-19 11:05:52 浏览: 39
在 JavaScript 中,`reduce` 是数组的一个方法,它用于将数组中的所有元素通过指定的函数进行累积计算,最终返回一个结果。
`reduce` 方法接受三个参数:
1. 累积函数(`reducer`):用于对每个元素进行操作的函数,它接受四个参数:累积值、当前值、当前索引和原始数组。
2. 初始值(可选):作为累积值的初始值。如果不提供初始值,则会使用数组的第一个元素作为初始值,并从数组的第二个元素开始进行累积计算。
3. 第三个参数(可选):用于指定累积函数中的 `this` 值。
第三个参数可以是任意类型的值,它将被作为累积函数中的 `this` 值。如果不提供第三个参数或者提供的是 `null` 或 `undefined`,那么累积函数中的 `this` 值将指向全局对象(在浏览器环境中通常是 `window` 对象)。
以下是一个使用 `reduce` 方法并传递第三个参数的示例:
```javascript
const numbers = [1, 2, 3, 4, 5];
function sum(accumulator, currentValue) {
return accumulator + currentValue;
}
const result = numbers.reduce(sum, 0);
console.log(result); // 输出:15
```
在上面的示例中,累积函数 `sum` 接受两个参数:累积值 `accumulator` 和当前值 `currentValue`,并返回它们的和。我们传递了初始值 `0` 作为累积值的初始值,这样累积计算从 `0` 开始。