局部函数

使用关键字 local 修饰函数,可以把函数声明为局部函数,作用域仅限于当前代码块。

返回多值

Lua 的函数可以一次返回多个值,调用时用多个变量同时接收。下面的例子里,calculate 同时返回两数之和与两数之差,调用方用 x1x2 一次性接收。

local function calculate(a,b)
  return a+b,a-b
end

local x1,x2=calculate(5,5)

print(x1 .. "  " .. x2)

函数嵌套

函数内部可以定义并调用其他函数,形成嵌套结构。

返回函数

Lua 中函数是一等公民,可以作为另一个函数的返回值。

匿名函数

Lua 支持匿名函数,可以在需要函数的地方直接写出函数体,而不必先为它起名字。