1.关系操作符 > < <= >= == ~=
== 相等性测试,相等的必要条件:同类型, 特别nil与自身相等
~= 不相等性测试
只能对数字或者字符串做大小性比较
2.逻辑操作符
and 第一个操作数为真,则返回第二个,否则返回第一个
or 第一个操作数为真,则返回第一个,否则返回第二个
not 操作数为假,则返回true,否则返回false
所有逻辑操作符将false和nil视为假,其他全为真
3.字符串连接【字符串是不可变的,连接后生成新字符串】
"hello".."world" --> "helloworld"
1 .. 2 --> "12"
4.运算符优先级
^
not # -(一元)
* / %
+ -
..
< > <= >= == ~=
and
or
5. table构造:类似于js的对象构造,使用{}创建一个新的table
a = {}
a.x = 1
a.y = 2
等同于
a = {x = 1, y = 2}
a = {
"a","b"
}
等同于
a = {[1] = "a", [2] = "b"}
【无键,则自动生成数值键】
字段删除:将其置nil即可
a.y = nil // 将a中的y删除