Ôn tập: bộ xử lý sự kiện đơn giản
Thuộc phần Logic và luồng chương trình trong hành trình Lua của Coddy. Bài học 15 trên 54.
Thử thách
DễViết một hàm createEventSystem để tạo hệ thống sự kiện đơn giản với các sự kiện được đăng ký trước và kích hoạt một sự kiện dựa trên tham số đầu vào.
Logic:
- Tạo một bảng trống để lưu các sự kiện bên trong
createEventSystem - Định nghĩa hàm
registernhậneventNamevàcallback, rồi lưu callback vào bảng sự kiện với tên sự kiện làm khóa - Định nghĩa hàm
triggernhậneventNamevàarg, tìm callback trong bảng sự kiện và gọi callback với đối số đó nếu callback tồn tại - Đăng ký trước ba sự kiện:
"double": nhận một số và trả về số đó nhân với 2"square": nhận một số và trả về bình phương của số đó"increment": nhận một số và trả về số đó cộng 1
- Kích hoạt sự kiện được chỉ định bởi tham số
eventNamevới tham sốvalue - Trả về kết quả của sự kiện đã kích hoạt, hoặc
"Event not found"nếu sự kiện không tồn tại
Tham số:
eventName(chuỗi): Tên của sự kiện cần kích hoạtvalue(số): Giá trị truyền vào callback của sự kiện
Giá trị trả về:
- Kết quả của hàm callback (số), hoặc
"Event not found"nếu sự kiện không tồn tại (số|chuỗi)
Tự làm thử
function createEventSystem(eventName, value)
-- Viết code ở đây
end
Tất cả bài học trong Logic và luồng chương trình
2Các hàm khác của thư viện table
table.concat()Tạo table và unpack()table.sort()Sắp xếp tùy chỉnh bằng hàmÔn tập: Bảng điểm cao5Dự án: Bộ máy trò chơi phiêu lưu bằng văn bản
Thiết lập dự án: Căn phòngLiên kết các phòng3Các khái niệm nâng cao về hàm
Trả về nhiều giá trịHàm nhận số lượng đối số linh hoạt (...)Hàm là giá trị hạng nhấtHàm ẩn danhClosure là gì?Ôn tập: bộ xử lý sự kiện đơn giảnTự luyện tập: Trình biên dịch Lua online