1. lua脚本的两种运行方式:
1. $ lua xxx.lua
2. 文件xxx.lua首行加上 #!/usr/bin/lua
chmod +x xxx.lua 加上可执行权限
./xxx.lua 运行lua脚本
2. 注释:
-- 单行注释
--[[
多行注释
--]]
3. Lua 变量
1. 变量在使用前,必须在代码中进行声明,即创建该变量
2. Lua 变量有三种类型:全局变量、局部变量、表中的域
3. Lua 中的变量全是全局变量,那怕是语句块或是函数里,除非用 local 显式声明为局部变量
4. 局部变量的作用域为从声明位置开始到所在语句块结束
5. 变量的默认值均为 nil
6. 删除变量 var : var = nil
4. 基本类型(8个)
nil、boolean、number、string、userdata、function、thread、table
5. 循环:
1. while循环
while(condition)
do
statements
end
2. for循环
for var = exp1, exp2,e xp3 do
statements
end
3. repeat..util循环
repeat
statements
until( condition )
6. 流程控制:
1. if(condition)
then
statements
end
2. if(condition)
then
statements
else
statements
end
3. 默认 false 和 nil 为假, true 和 0 为真
7. 函数:
optional_function_scope function function_name( argument1, argument2, argument3..., argumentn)
function_body
return result_params_comma_separated
end
optional_function_scope: 该参数是可选的制定函数是全局函数还是局部函数,未设置该参数默认为全局函数,如果你需要设置函数为局部函数需要使用关键字 local
function_name: 指定函数名称
argument1, argument2, argument3..., argumentn: 函数参数,多个参数以逗号隔开,函数也可以不带参数
function_body: 函数体,函数中需要执行的代码语句块
result_params_comma_separated: 函数返回值,Lua语言函数可以返回多个值,每个值以逗号隔开
Lua 函数可以接受可变数目的参数,和 C 语言类似,在函数参数列表中使用三点 ... 表示函数有可变的参数
8. 运算符:
~= 不等于
- 也有负号的作用
and 与
or 或
not 非
.. 连接两个字符串
# 一元运算符,返回字符串或表的长度
9. Lua字符串
Lua 语言中字符串可以使用以下三种方式来表示:
单引号间的一串字符
双引号间的一串字符
[[和]]间的一串字符
内置很多字符串操作函数,如string.upper(argument)、string.find (str, substr, [init, [end]])
10. 模块与包
也可以给加载的模块定义一个别名变量,方便调用,如:local m = require("module")
Lua与C的结合
11. 协程