เรียนรู้เกี่ยวกับ Ruby Blocks
หากเริ่มเขียน Ruby มาได้สักระยะหนึ่ง จะพบว่ามี syntax ที่เห็นอยู่บ่อยๆ เลยก็คือ {}
หรือคำสั่ง do/end
โดยมีโค้ดอยู่ภายในดังตัวอย่างด้านล่าง ซึ่งจะเรียกว่า Block
# Example 1
[1, 2, 3].each { |num| puts "Number is #{num}" }
# Example 2
[1, 2, 3].each do |num|
puts "Number is #{num}"
end
พารามิเตอร์ที่รับเข้ามาจะอยู่ภายในเครื่องหมาย ในกรณีที่มีหลายพารามิเตอร์ก็จะใช้ , คั่น
จะพูดให้ง่ายๆ Block ก็คือ Anonymous Function ที่ถูกนิยามขึ้นโดยไม่มีฟังก์ชัน และถูกเรียกใช้งานในทันที ซึ่งจะใช้ {}
หรือ do/end
ก็ได้ แต่ส่วนใหญ่เราจะใช้ {}
ในกรณีที่โค้ดเรามีเพียงบรรทัดเดียว และจะใช้ do/end
เมื่อโค้ดมีหลายบรรทัด ทั้งนี้ก็เพื่อความสวยงาม และอ่านได้ง่าย