变量在使用前,必须在代码中进行声明,即创建该变量。

编译程序执行代码之前编译器需要知道如何给语句变量开辟存储区,用于存储变量的值。

Lua 变量有三种类型:全局变量、局部变量、表中的域。

Lua 中的变量全是全局变量,那怕是语句块或是函数里,除非用 local 显示声明为局部变量。

局部变量的作用域为从声明位置开始到所在语句块结束。

变量的默认值均为 nil。

  1. -- test.lua 文件脚本
  2. a = 5 -- 全局变量
  3. local b = 5 -- 局部变量
  4. function joke()
  5. c = 5 -- 全局变量
  6. local d = 6 -- 局部变量
  7. end
  8. joke()
  9. print(c,d) --> 5 nil
  10. do
  11. local a = 6 -- 局部变量
  12. b = 6 -- 全局变量
  13. print(a,b); --> 6 6
  14. end
  15. print(a,b) --> 5 6

执行以上实例输出结果为:

  1. $ lua test.lua
  2. 5 nil
  3. 6 6
  4. 5 6