一个 变量 是一个包含值的名称。变量值可以是 数字、字符串、布尔类型、数据类型 等。
名称变量
变量名称可以是任何不含数字的字母、数字和斜线的非保留字符串,不会以数字开头。
LETTERS -- 有效a1 -- 有效var_name -- 有效_test -- 有效if -- 无效25th -- NOT valid
变量名称是 大/小写分别 , 因此 TestVar 和 TESTVAR 是不同名称。避免用下划线和所有大写字母命名变量,例如 _VERSION ,因为 Luau 可能会保留它们用于内部全球变量。
最佳实践
最好将单词完全说明。缩略语通常使代码更容易写,但更难阅已读。在命名变量时遵循常见的命名实践可以帮助你和其他人理解它们的含义或目的:
- 使用 PascalCase 名称为类和枚列对象。
- 使用 PascalCase 名称为所有 Roblox API。camelCase API 大多已被弃用。
- 使用 camelCase 名称为本地变量、成员值和 函数 。
- 使用 名称为本地常量 (变量拥有值不会发生变化的变量)。
- 不要在名称内使用整个缩写语。例如,写 aJsonVariable 或 MakeHttpCall 。
保留名称
Luau保留以下关键字,因此您不能使用它们来命名变量或函数:
- and
- for
- or
- break
- function
- repeat
- do
- if
- return
- else
- in
- then
- elseif
- local
- true
- end
- nil
- until
- false
- not
- while
分配值
要创建变量并为其分配值,请使用 = 运营符。将变量放在 = 左侧,值放在右侧。如果你没有放置值,值为 nil .
变量可以有 全局 或 本地 范围 .默认情况下,它们具有全球范围,但几乎总是更好创建它们与本地范围,因为 Luau 访问本地变量比全球变量快得多。要给变量一个本地范围,在给变量分配值时,将关键字 local 放在变量名称前。了解 Luau 中范围的更多信息,请参阅 范围。
local nilVarlocal x = 10local word = "Hello"local boolean = trueprint(nilVar) -- 无print(x) -- 10print(word) -- 您好print(boolean) -- true
为多个变量分配值
您可以用逗号将每个变量值对分开,以在一行中为多个变量分配值。如果变量比值多,那么 Luau 将 nil 分配给额外的变量。如果你有更多的值 than 变量, Luau 不会将额外的值分配给任何变量。
local a, b, c = 1, 2, 3local d, e, f = 4, 5 -- 额外变量local g, h = 7, 8, 9 -- 额外值print(a, b, c) -- 1, 2, 3print(d, e, f) -- 4、5、零print(g, h) -- 7, 8
更改值
要更改变量的值,将另一个值分配给它。
local x, y = 10, 20print(x) -- 10print(y) -- 20local x = 1000local y = 2000print(x) -- 1000print(y) -- 2000