Javascript 下划线?减少澄清?
我刚刚开始更深入地研究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。是这样吗?因此
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
函数。非常感谢;我想要的一切。祝您有个美好的一天。