1. 函数有两个作用: 作为调用语句, 做表达式使用。

2. 函数语法:
  function func_name(arguments_list)
           statemets_list;
       end;

3. 调用函数时,如果参数表为空,必须使用() 表示时函数调用。当函数只有一个参数,且这个参数是字符串或者表构造时,()可有可无。

4. Lua使用的函数既可以是Lua编写的,也可以是其他语言编写。

5. Lua的实参和形参匹配和赋值类似。

6. 多返回值:Lua可返回多个值。

7. 一个函数或者一个return语句,用()括起来将强制返回一个值。

8. unpack接受一个table作为参数,返回table的所有元素。

9.可变参数,Lua的可变参数放在一个名为arg的表中。

10.Lua的参数可以使用命名参数。