小编Wee*_*ine的帖子

我需要澄清Metatable .__ index

我之前问过为什么我的方法不是由Lua找到我的方法,并且被告知通过设置__index我的metatable,它会解决问题,所以我假设一个方法被调用时是通过metatable中的索引进行搜索,但我已经遇到了一个问题,现在我需要使用索引括号[]我的元表,因此__index被分配到从它里面的一张桌子返回索引,我该如何解决您在使用这两种方法的功能需求和使用索引括号

我写了一个指示问题的最小例子:

TestMetatable = {DataTable = {}}
TestMetatable.__index = TestMetatable

function TestMetatable.new()
    local Tmp = {}
    setmetatable(Tmp,TestMetatable)

    Tmp.DataTable = {1}

    return Tmp
end

function TestMetatable:TestMethod()
    print("Ran Successfully")
end

function TestMetatable.__index(self,index)
    return self.DataTable[index]
end

local Test = TestMetatable.new()

-- both functionalities are needed
print(Test[1])
Test:TestMethod()
Run Code Online (Sandbox Code Playgroud)

lua metatable

5
推荐指数
1
解决办法
6033
查看次数

在JavaScript中,Lua的省略号相当于什么?

在Lua中,这样的函数是有效的:

function FuncCallHack(Func, ...)
    return Func(...)
end
Run Code Online (Sandbox Code Playgroud)

有没有办法在JavaScript中做到这一点?...对于那些不熟悉Lua的人来说,意味着"未分组数组形式的所有无索引参数".我尝试过...使用JavaScript,但它似乎没有功能,而且由于Google不喜欢搜索特殊字符,所以它没有多大帮助.

javascript parameters syntax ellipsis optional-parameters

5
推荐指数
1
解决办法
1669
查看次数