小程序开发网上商城优化排名 生客seo
文章目录
- 基础数据类型分类
- nil
- boolean
- number
- string
- function
- userData
- thread
- table
- 如何判断类型(type)
- 不同类型数据常见操作
- nil
- number
- string(字符串)
- function
- 普通函数
- 匿名函数
- 不定参数函数
- table
基础数据类型分类
nil
表示无效值
boolean
只有 true 和 false
number
数值类型可以保存实数,包括整数和浮点数,整数可以是十进制和十六进制,由一串数字序列组成。如果是0x开始,则表示是一个十六进制数。
string
使用单引号或者双引号包含的值即为string
function
函数
userData
用户自定义的 数据结构
thread
线程,
table
表,可以是数组 也可以是对象
如何判断类型(type)
通过使用type()
方法进行判断,该方法会返回字符串的类型,然后可以通过==号判断类型。例如:
> type(nil) =='nil'
true
> type(nil) == nil
false
> type("测试") == "string"true
不同类型数据常见操作
nil
- 表示的是一个无效值,同时我们可以通过该属性将table和全局变量进行删除
- nil表示假值,lua中仅有两个假值 分别为:false 和 nil
number
print(type(2))
print(type(2.2))
print(type(0.2))
print(type(2e+1))
print(type(0.2e-1))
print(type(7.8263692594256e-06))
string(字符串)
- 双引号和单引号都表示字符串类型(部分语言单引号表示char类型)
- 用引号包裹的字符串会被转义。例如:
> a = "1\n2"
> print(a)
--输出结果
1
2
- 如果字符串内容不想被转义则推荐使用块字符串
[[内容]]
,例如:
> a = [["这是测试块字符串"]]
> print(a)
--输出结果
"这是测试块字符串"
- 如果 块字符串中包含最外层包含[]则需要对块字符串做额外处理,即在[[中拼接=,例如:
> a = [=[[]]=]
> print(a)
--输出结果
[]
function
普通函数
function func1()a = 456;print("a:",a)
end
func1(a)
匿名函数
function func1(a,fun)a = 456;print(a);fun("567");
end
func1(a,
function (b)print(b);
end
)
不定参数函数
function func1(...)local arg = {...}print(arg[1])print(arg[2])print(arg[3])
end
func1(1,2,3)