javascript - 如果没有提供 reduce ,它如何决定它的初始值?
问题描述
javascript的函数如何reduce
确定它的初始值,当它没有被传递时?它只是默认为数字0
吗?
为什么这两个工作:
[1, 2, 3, 4].reduce((sum, currentValue) => {
return sum + currentValue;
});
[1, 2, 3, 4].reduce((string, currentValue) => {
return `${string}` + currentValue;
});
但这不是吗?
[1, 2, 3, 4].reduce((object, currentValue) => {
object[currentValue] = currentValue;
return object;
});
解决方案
Array.prototype.reduce()
初始值(可选)
用作回调第一次调用的第一个参数的值。如果未提供初始值,则将使用数组中的第一个元素。在没有初始值的空数组上调用 reduce() 是错误的。
推荐阅读
- python - 将树视图中的内容导出到excel文件的最短方法是什么
- ruby - 有没有办法在 ruby 中指定不可扩展的类?
- scala - 在 Scala 中编写级联 if 语句的更好方法?
- jquery - 以与文件相同的顺序加载图像
- pandas - 将 df2 中随机选择的值与 df1 连接
- c# - 类型“System.Linq.Enumerable”上不存在方法“SelectToken”
- python - 更快地迭代 pandas 数据框并应用条件函数的方法
- python - Python Cryptography 生成带有属性部分挑战的 CSR
- c# - 在 c# 中使用 SqlBulkCopy 插入新记录并更新现有记录
- java - 如何刷新 Selenium 中的 DOM 树以便显示新生成的元素?