gpt4 book ai didi

ruby - 为什么 reduce 的参数按它们的顺序排列?

转载 作者:太空宇宙 更新时间:2023-11-03 16:14:32 25 4
gpt4 key购买 nike

我总是忘记 ruby​​ ( https://ruby-doc.org/core/Enumerable.html#method-i-reduce ) 中 reduce 的参数,它是这样调用的:

(5..10).reduce { |sum, n| sum + n }

首先传入累加器是否有语言设计原因,或者它只是一个任意选择? JS 的工作方式相同。

最佳答案

这主要是为了让你可以做这样的事情:

(5..10).reduce(&:+)

扩展到的地方:

(5..10).reduce { |a,b| a.send(:+, b) } 

相当于:

(5..10).reduce { |a,b| a + b }

所以这样说是有道理的。请注意,顺序与 each_with_object 相反。

关于ruby - 为什么 reduce 的参数按它们的顺序排列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50030069/

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