Lua语言中函数本质上是一个function类型的值。这个值可以作为表达式的一部分,也可以被赋予变量。当被赋予变量时,变量名则为函数名。

由于函数是一个值,因此Lua中函数都是匿名的,所谓的函数名则是保存函数值的变量

闭包指的是一个函数和该函数能够访问其外部作用域的局部变量的机制

函数和闭包的区别在于,函数是没有访问外部作用域的局部变量的闭包