[lua]原来这才是表驱动的正确表达方式

时间:2023-03-08 16:56:05

曾经写了个很煞笔的脚本模拟switch..case语法形式。[lua]尝试一种Case语法糖

而今实际项目应用中突发,原来这才是正确的表驱动方式表达。如下所贴:

function event_do( event )
-- event:string
local handler ={}
function handler.touchBegin()
print("handler.touchBegin")
end
function handler.touchEnd()
print("handler.touchEnd")
end local event_handler = handler[event]
return event_handler and event_handler()
end event_do("touchBegin") event_do("touchEnd")

没有switch..case语法支持的语言环境下,如何避开大篇幅的if..elseif..连串的段落;体现内容的组织性,刚好使用lua自身特性,十分完美的展现表驱动编程..

感谢上帝,感谢lua创造之父。