对减少和箭头功能感到困惑[重复]
Posted
技术标签:
【中文标题】对减少和箭头功能感到困惑[重复]【英文标题】:Confusing on Reduce and Arrow function [duplicate] 【发布时间】:2022-01-11 16:48:21 【问题描述】:我现在正在看下面的帖子
javascript Algorithm Attempting to Implement Call Back Function。我可以理解其他部分,但对以下代码特别困惑。
const sum = integerSet.reduce((total, item) => total + Math.pow(item, pow), 0);
。
那么,最后添加 0 的目的是什么,如果我们从箭头函数更改为普通函数,是否会更改为 this? sum = integerSet.reduce(function(total, item) return total + Math.pow(item,power),0; )
我已经搜索了几种reduce方法的用法,但仍然无法清楚地了解他是如何使用的,所以我决定在这里问一下。
【问题讨论】:
箭头函数结束于,
...
【参考方案1】:
0 为您提供起点。从那里开始,一切都将在这个累加器的“顶部”进行计算。因此,在您的示例中,0 将是 item
开头。
【讨论】:
但不会减少方法,特别是从 null 开始“total”,然后在工作“item”之后添加。在 reduce(a,b)=> a + b 中,根据我的书,a 从 null 开始,这就是我感到困惑的原因 @echo developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… @echo 在[1, 2].reduce((a, b) => ...)
中,直接用a = 1, b = 2
调用函数。在[1, 2].reduce((a, b) => ..., 0)
中,它最初被称为a = 0, b = 1
。
null
是一个对象,零是一个数字。所以你确实有不同的数据类型。从 null 开始可能是可能的,但有点笨拙。但也许也有一个用例。以上是关于对减少和箭头功能感到困惑[重复]的主要内容,如果未能解决你的问题,请参考以下文章