1·轻量、扩展。支持面向过程/对象,和函数式编程(可以赋值,作为参数,作为返回值)通用表,
函数式编程:https://zhuanlan.zhihu.com/p/363757919
2·环境:Github 下载地址(安装):Releases · rjpcomputing/luaforwindows · GitHub
3·交互式编程(立刻查看效果): lua -i 或 lua 来启用 。脚本式编程(保存到文件):以 lua 结尾的文件 。指定解释器:./xxx.lua添加可执行权限。
单行注释:--多行注释:--[[ --]]
标示符:字母,数字,_ ,不允许使用特殊字符
关键字(保留字)……
4· 8 个基本类型:
nil :没有赋值的变量输出nil 。全局变量/ table 表里的变量= nil ==删掉。type(X)(返回x的类型)=string
boolean : false / nil = false,其他= true
number :double双精度(15位有效数字)
string:双引号或单引号,[[]]表示一块字符串
字符串连接 ..
table(不会固定长度) :{}创建空表,添加数据初始化表,相当关联数组(键值)a = {} a["key"](表的索引,可以省略为a.key) = "value" 。for k, v (分别对应键值,索引以 1 开始)in pairs(a) do 。key=键,a[key]=表示值。
function:遵守函数式编程(作为匿名函数:作为参数)
thread:是协同程序:只能运行一个
userdata :自定义数据
5·变量默认情况下变量是全局的,local 声明为局部。
赋值:对多个变量(经常用来交换变量)同时赋值。会先计算右边所有的值,然后再执行赋值操作,所以可以直接赋值,x, y = y, x(y=y,x=x),不存在值先被改变。变量个数和值的个数不一致时,以变量为准,