将字符串和函数关联起来 Lua

我有一个表格像这样:

{"video",video_search(message)}.

如何判断输入的字符串是否等于 "video",然后执行 video_search 命令?

点赞
用户4984564
用户4984564

你问题的正确答案应该是

if input_string == "video" then
   video_search()
end

但是根据标题和一些直觉,我假设你真正想问的是

我如何将函数与字符串关联,并在给定字符串的情况下调用关联的函数?

答案是不同的:首先,重新组织你的表格,让它看起来像这样

local whatever = {
   ["video"] = video_search;
   ["audio"] = audio_search;
   -- 你的其他东西...
}

然后你可以像这样调用函数:

local input = "video"
local message = "whatever a message is in your program"

whatever[input](message)
2020-06-24 12:40:44