如何使用不使用loadstring()函数从字符串中加载代码

有没有办法从字符串中加载代码,而不需要使用loadstring()函数?

例如:

local code = {
    {
        Code = [[
            function DoSomething()
                print('做一些事情')
            end
        ]]
    },
    {
        Code = [[
            function DoSomethingElse()
                print('做其他事情')
            end
        ]]
    },
}

for i = 1, #code do
    local currentCode = code[i].Code
    -- 在此处加载这段代码,而不要使用loadstring()
end

我编写的应用程序使用不包含loadstring()函数的Lua版本。有一个load()函数,它可以按相同的方式工作,但它并不是一种安全的加载代码方式。它很容易被拦截。我希望尽可能地保护我的代码。

点赞