基本语法
1.注释,标识符,关键字
单行注释:--
多行注释:--[[
多行注释
多行注释
]]--
标识符:用于定义一个变量,函数获取其他用户定义的项。标识符以一个字符A到Z或者a到z或下划线_开头加上0个或多个字母,下划线,数字(0到9)。
建议不使用下划线加大写字母的标识符,应为Lua的保留字是这样的。同时Lua不允许特殊符号定义标识符。
关键字:
and | break | do | else |
elseif | end | false | for |
function | if | in | local |
nil | not | or | repeat |
return | then | true | until |
while |
一般约定,以下划线开头连接一串大写字母的名字(比如 _VERSION)被保留用于 Lua 内部全局变量。
全局变量:
默认情况下,变量总是认为是全局的。
全局变量不需要声明,给一个变量赋值之后就是全局变量了。访问一个未经初始化的全局变量也不会出错。只不过获取到的值是nil。
删除一个全局变量,只需要把变量值赋值为空即可。
b = nilprint(b) --> nil
就好像b从没有使用过一样,当b不等于nil的时候,变量存在。
2.基本数据类型
Lua中有8种数据类型分别是:nil,boolean,string,userdata,function,thread和table。
数据类型 | 描述 |
---|---|
nil | 这个最简单,只有值nil属于该类,表示一个无效值(在条件表达式中相当于false)。 |
boolean | 包含两个值:false和true。 |
number | 表示双精度类型的实浮点数 |
string | 字符串由一对双引号或单引号来表示 |
function | 由 C 或 Lua 编写的函数 |
userdata | 表示任意存储在变量中的C数据结构 |
thread | 表示执行的独立线路,用于执行协同程序 |
table | Lua 中的表(table)其实是一个"关联数组"(associative arrays),数组的索引可以是数字或者是字符串。在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。 |
nil做比较的时候应该加上双引号。
table表:
在lua中,table的创建是通过构造表达式完成的,最简单的构造表达式是{},用来创建一个空表。也可以在表里添加一些数据实现初始化。
lua中的表其实是一个关联数组,数组额索引可以是数字或者字符串。
lua的变量是动态的,就是初始化没有具体的数据类型,当你给他赋值成什么数据,就是什么数据类型