什么" temps.each(&:有效?)"在Ruby中意味着什么

时间:2012-03-29 13:49:53

标签: ruby-on-rails ruby

  

可能重复:
  What does map(&:name) mean in Ruby?

&:valid?each的含义是什么意思? 我见过.each do |r|或其他什么,但不确定这个是如何工作的?

2 个答案:

答案 0 :(得分:12)

&被称为to_proc运算符。它将符号(:valid?)扩展为Proc。 所以你的例子相当于:

temps.each { |t| t.valid? }

答案 1 :(得分:4)

&amp ;: symbol是符号处理的简写。

这是一篇很好的博客文章。 http://blog.hasmanythrough.com/2006/3/7/symbol-to-proc-shorthand