我试图通过它的名字来调用一个函数但是,因为我试图调用的函数是一个方法,所以我想要的所有args都是nil。我怎么能用所有的args调用这个函数?
以下是我想要做的一个小例子:
local s = "hi"
local test = {}
function test:hi(n)
print(n)
end
test[s]("hello")
打印 - >零
答案 0 :(得分:1)
此:
function test:hi(n)
print(n)
end
完全等同于:
function test.hi(self, n)
print(n)
end
所以你可以通过这样做得到你想要的结果:
test[s](test, "hello")
或者看到未使用test
参数,您也可以这样称呼它:
test[s](nil, "hello")
希望这有帮助。