【问题标题】:Using Proc with ruby hash merge results in将 Proc 与 ruby​​ 哈希合并一起使用会导致
【发布时间】:2015-12-20 21:53:45
【问题描述】:

我正在尝试使用 Procs 来干燥我的代码。我有很多看起来像这样的行(其他行可能有费用、折扣、税收,而不是收入):

h.merge!({revenue: 500}){|key, old_val, new_val| old_val + new_val}

我尝试编写一个如下所示的 Proc:

hproc = Proc.new {|key, old_val, new_val| old_val + new_val}

并通过这样做来简化第一行:

h.merge!({revenue: 500})(&hproc)

但是,我得到了错误:

syntax error, unexpected '(', expecting end-of-input
h.merge!({revenue:600})(&hproc)
                    ^

【问题讨论】:

  • 你有什么问题?
  • 顺便说一下,无法复制。
  • 你回答了!谢谢,原来是你指出的语法错误。

标签: ruby proc


【解决方案1】:
h.merge!({revenue: 500}, &hproc)

【讨论】:

    猜你喜欢
    • 2014-06-15
    • 1970-01-01
    • 2012-11-19
    • 2011-08-26
    • 1970-01-01
    • 2012-01-14
    • 2019-02-21
    • 2019-08-08
    相关资源
    最近更新 更多