Mô tả về closure
trong Ruby?
Mô tả về closure
trong Ruby?
Trong Ruby, closure là một hàm hoặc một khối mã với các biến được liên kết với môi trường mà closure được gọi. Closure có thể được coi như một biến có thể được gán cho biến khác hoặc có thể được truyền vào bất kỳ hàm nào như một đối số. Một khối closure có thể được định nghĩa trong một phạm vi và có thể được gọi trong một phạm vi khác. Closure luôn nhớ các biến trong phạm vi của nó tại thời điểm tạo ra và khi được gọi, nó có thể truy cập các biến đó
Ruby cung cấp ba loại closure chính: blocks, procs, và lambdas.
Blocks: Là hình thức đơn giản nhất của closure trong Ruby. Blocks không phải là đối tượng nhưng có thể được truyền vào một phương thức sử dụng từ khóa yield
. Blocks được định nghĩa bằng cặp ngoặc nhọn {}
hoặc từ khóa do...end
Procs: Tương tự như blocks nhưng là một đối tượng của lớp Proc
. Điều này cho phép bạn gán một block vào một biến và gọi nó nhiều lần. Procs linh hoạt hơn blocks vì chúng có thể được truyền như một đối số c...
middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào