变量

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处

一个 变量 是一个持有值的名称。变量的值可以是 数字字符串布尔值数据类型 等等。

命名变量

变量名称可以是任何非保留字的字母、数字和下划线的组合,并且不能以数字开头。


LETTERS -- 有效
a1 -- 有效
var_name -- 有效
_test -- 有效
if -- 无效
25th -- 无效

变量名称是 区分大小写 的,因此 TestVarTESTVAR 是不同的名称。避免使用下划线和全大写字母命名变量,例如 _VERSION,因为 Luau 可能会将其保留用于内部全局变量。

最佳实践

最佳实践是完整拼写单词。缩写通常使代码更容易编写,但阅读起来更困难。遵循命名变量的常见命名规则可以帮助你和其他人理解它们的含义或目的:

  • 对于类和类似枚举的对象使用 PascalCase 命名。
  • 对于所有 Roblox API 使用 PascalCase 命名。camelCase API 大多已被弃用。
  • 对于局部变量、成员值和 函数 使用 camelCase 命名。
  • 对于局部常量(你不期望 改变 值的变量)使用 LOUD_SNAKE_CASE 命名。
  • 不要在名称中完全大写缩写。例如,写作 aJsonVariableMakeHttpCall

保留名称

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 中作用域的更多信息,请参见 Scope


local nilVar
local x = 10
local word = "Hello"
local boolean = true
print(nilVar) -- nil
print(x) -- 10
print(word) -- Hello
print(boolean) -- true

为多个变量赋值

你可以通过用逗号分隔每个变量-值对,在一行中为多个变量赋值。如果变量数量多于值,则 Luau 将额外的变量赋值为 nil。如果值的数量多于变量,则 Luau 不会将额外的值分配给任何变量。


local a, b, c = 1, 2, 3
local d, e, f = 4, 5 -- 多余的变量
local g, h = 7, 8, 9 -- 多余的值
print(a, b, c) -- 1, 2, 3
print(d, e, f) -- 4, 5, nil
print(g, h) -- 7, 8

改变值

要改变变量的值,给它赋予另一个值。


local x, y = 10, 20
print(x) -- 10
print(y) -- 20
local x = 1000
local y = 2000
print(x) -- 1000
print(y) -- 2000
©2026 Roblox Corporation、Roblox、Roblox 标志及 Powering Imagination 是我们在美国及其他国家或地区的注册与未注册商标。