Lua中的 `load` 函数有什么作用?

我试图解决我对Lua脚本中的load函数的理解问题,但没有任何关于此命令的示例或指南。根据Lua官方网站上的说明https://www.lua.org/manual/5.2/manual.html#pdf-loadload(ld [, source [, mode [, env]]]) 请问有人可以为我描述一下吗?

点赞
用户1442917
用户1442917

load 函数会接收一个代码块,将其编译,并返回一个可被调用的函数,用于执行该代码块。例如,下面的代码会创建一个函数,用于执行两个数的加法运算:

local func, err = load("return function(a,b) return a+b end")
if func then
  local ok, add = pcall(func)
  if ok then
    print(add(2,3))
  else
    print("Execution error:", add)
  end
else
  print("Compilation error:", err)
end

输出结果应该为 5

2018-02-05 22:32:40