Redis进阶 Lua函数

发布时间 2023-12-25 23:09:56作者: RookieCoderAdu

1.可以直接声明一个局部变量来接收函数,也可以直接简写

local square=function(i)
  return i*i
end

简写:
local function square(i)
  return i*i
end

 

2.当调用函数时,参数是一一对应的,如果多了参数,则会忽略,少则会将对应位置的参数赋值为nil

 

3.如果想要实现可变参数个数,也就是参数个数可以自定义,可以直接在声明函数的时候将参数设置成...

以下实例实现了输出三个参数平方的函数

 这里函数的参数是... 。表明参数是可变的,然后获取参数之后将它们放入一个表类型的数据args。遍历求值之后替换原表类型里面的值,之后使用

table.unpack返回元素值。之后使用的是a,b,c三个变量来接收的结果。

注意:在Lua 5.2版本之前,使用的是unpack函数,但由于我是用的是5.3版本,所以此处改为table.unpack。