全局变量
不赋值则默认为nil,内存直接被回收
数据类型
动态类型语言
userdata: 其他语言的数据

- nil
- 空值,类似null,未定义的和未赋初值的全局变量
- Boolean
- nil 和 false 为 假,其他所有(包括number 0)都为真
- 条件运算符not and or, and优先级大于or
- 短路运算
- 有nil和false的当成假,其他当成真
- 返回的不一定是布尔值,而是短路运算后得到的值(”a” or “hi” → “a”, 1 and 0 → 0)
- a ? b : c 等价于 (a and b or c) (b ≠ false or nil)
- Number
- math.type(number n) 可以返回n是整数还是浮点数
- 小数在精度不是很高的时候与对应的整数会被(==)判定为相等
- 小数也可以用十六进制表示,更好的保留精度信息,末尾用p标识
- %a 即可转换为16进制小数表达
- 3 / 2 = 1.5, 3 // 2 = 1
