Javascript 下划线?减少澄清?

Javascript 下划线?减少澄清?,javascript,underscore.js,Javascript,Underscore.js,我刚刚开始更深入地研究JavaScript下划线库,只是想澄清一下我的想法(也称为inject和foldl)是正确的。我的问题是:下面是正确的吗 当减少([1,2,3,4,5]时,函数(memo,num){returnmemo+num;},5)时,会发生以下情况: memo从5开始 备忘录+列表[0]=备忘录=6 备忘录+列表[1]=备忘录=8 备忘录+列表[2]=备忘录=11 备忘录+列表[3]=备忘录=15 备忘录+列表[4]=备忘录=20 这就是为什么ran函数返回20。是这样吗?因此

我刚刚开始更深入地研究JavaScript下划线库,只是想澄清一下我的想法(也称为
inject
foldl
)是正确的。我的问题是:下面是正确的吗

减少([1,2,3,4,5]时,函数(memo,num){returnmemo+num;},5)时,会发生以下情况:

  • memo
    5开始
  • 备忘录
    +
    列表[0]
    =
    备忘录
    =
    6
  • 备忘录
    +
    列表[1]
    =
    备忘录
    =
    8
  • 备忘录
    +
    列表[2]
    =
    备忘录
    =
    11
  • 备忘录
    +
    列表[3]
    =
    备忘录
    =
    15
  • 备忘录
    +
    列表[4]
    =
    备忘录
    =
    20
这就是为什么ran函数返回
20
。是这样吗?因此是相反的,从
memo
+
列表[/*数组中的最后一个元素*/]
开始

谢谢


问候。

是的,没错。
reduce
回调函数的第一个参数表示上一次迭代返回的值(或在第一次迭代中返回的种子)

回调的第二个参数是数组当前迭代的值


因此,第一个参数是您试图达到的任何结果的累加器。所有迭代完成后,最终值将从
函数返回。reduce
函数。

非常感谢;我想要的一切。祝您有个美好的一天。