Tìm hiểu Block, Proc và Lambda trong Ruby
-
I.Khái niệm
Block
- Block đơn giản là một khối mã gồm tất cả những gì bên trong {} hoặc do end
- Mọi thứ trong ruby đều là object ngoại từ block
- Có thể được chỉ định thành Proc
Block ở bên trong dấu {...} hoặc do ... end
Block được truyền vào method ở vị trí giống như là một tham số cuối cho phương thức được gọi và được gọi ra bằng câu lệnh yield trong định nghĩa method. Câu lệnh yield cũng có thể truyền tham số vào block rất giống với việc truyền tham số cho method
Block được viết như là một tham số cho phương thức
Block được viết như là một tham số cho phương thứcProc
Lambda
II.So sánh
Giống nhau
Khác nhau
III.Lời kết
Nguồn: Viblo