gpt4 book ai didi

javascript - 为什么 JavaScript reduce 方法当前索引参数从 1 开始?

转载 作者:行者123 更新时间:2023-12-02 07:16:59 25 4
gpt4 key购买 nike

如果您要在您的控制台中启动此代码段

[0,1,2,3].reduce((acc, val, index) => {
console.log(index);
return acc;
});

你会得到

1
2
3

那么问题来了,为什么索引从1开始呢?

UPD:可能我遗漏了一些非常基本的东西,但是

[0,1,2,3].reduce((acc, val, index, initialValue) => {
console.log(index);
return acc;
});

给我

1
2
3
0

UPD2:是的,我缺少一些基本的东西。

[0,1,2,3].reduce((acc, val, index) => {
console.log(index);
return acc;
}, 0);

最佳答案

因为您还没有提供 initialValue 参数。来自文档:

If no initialValue is supplied, the first element in the array will be used and skipped

进一步阅读,您的问题有一个直接答案:

Note: If initialValue is not provided, reduce() will execute the callback function starting at index 1, skipping the first index. If initialValue is provided, it will start at index 0.

更多信息 here

关于javascript - 为什么 JavaScript reduce 方法当前索引参数从 1 开始?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60321840/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com