я прочитал следующий рубинового код:Как понять этот код ruby?
def callbacks(procs)
procs[:starting].call # line 1
puts "Still going"
procs[:finishing].call # line 2
end
callbacks(:starting => Proc.new { puts "Starting" }, # line 3
:finishing => Proc.new { puts "Finishing" }) # line 4
Я думаю, что это доза. Но я не знаю, что :starting
и :finishing
в строке 1 & 2 означает, а что :starting=>
в строке 3 и :finishing=>
в строке 4 означает. Трудно найти ключевое слово для google.
Может ли кто-нибудь объяснить строку 1,2,3,4 мне? Если вы можете обратиться к официальному документу, это будет еще лучше.
Is
:string
эквивалентно"starting"
? – TieDad@EvanLi ': string' является символом и' 'start" 'является строкой. –
Зачем использовать символ как хэш-ключ, а не строку? – TieDad