【问题标题】:whats does .map(&:chomp) do, exactly? [duplicate].map(&:chomp) 到底是做什么的? [复制]
【发布时间】:2012-12-24 09:20:41
【问题描述】:

可能重复:
What do you call the &: operator in Ruby?

我总是看到'.map(&:chomp)'

我知道 chomp 和 map 做什么,但我想知道 &: 做什么,我想知道为什么在谷歌搜索 30 分钟后我无法在网络上找到它.....

【问题讨论】:

  • 这是该问题的第 22 次重复。 StackOverflow 开发人员何时才能最终修复损坏的搜索功能,以使这种情况不再发生?

标签: ruby


【解决方案1】:

它是Symbol#to_proc,它将符号转换为一个过程,尝试在其参数上调用给定的方法,并返回结果。

x = :reverse.to_proc

x.call("asdf") # "fdsa", like calling "asdf".reverse

在您的情况下,.map(&:chomp) 等同于 .map { |x| x.chomp }

如果你在谷歌上找不到它,那是因为你用谷歌搜索错了。这是一个众所周知的 Ruby 习语。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2020-07-16
  • 1970-01-01
  • 1970-01-01
  • 2015-08-10
  • 2015-03-28
  • 2014-11-20
  • 2014-11-11
  • 1970-01-01
相关资源
最近更新 更多