dan*_*iel 7 loops ruby-on-rails ruby-on-rails-3
可能重复:
Ruby中的"for"是什么
嘿.我的问题是,当我遍历数组时,这些循环是否相同.感谢你的时间!
<% for track in @tracks %>
Run Code Online (Sandbox Code Playgroud)
要么
<% @tracks.each do |track| %>
Run Code Online (Sandbox Code Playgroud)
它们是不同的(尽管它可能对您的目的无关紧要).
for 不会创建新范围:
blah = %w(foo bar baz)
for x in blah do
z = x
end
puts z # "baz"
puts x # "baz"
Run Code Online (Sandbox Code Playgroud)
.each 为块创建新范围:
blah.each { |y| a = y }
puts a # NameError
puts y # NameError
Run Code Online (Sandbox Code Playgroud)