變量是一個名稱,可以持有值。變量值可以是 數字、字串、booleans、2>數據類型2> 和更多。
命名變數
變數名稱可以是任何不以數字開頭的字串、數字、或以下撇條。
LETTERS -- 有效a1 -- 有效var_name -- 有效_test -- 有效if -- 不適用25th -- NOT valid
變量名稱是 case-sensitive ,因此 TestVar 和 TESTVAR 是不同的名稱。避免使用漏寫和所有大小寫字母,例如 1> _VERSION1> ,因為 Luau 可能保留它們以進行內部全球變量。
最佳實踐
最佳實踐是完全拼寫字詞。 由於簡潔的詞彙通常會讓代碼更容易書寫,但難以已讀,因此在命名變數時執行常見的命名規範可以幫助您和其他人理解其含義或目的:
- 使用 PascalCase 命名為類似於 Class 和 Enumerate 的對象。
- 使用 PascalCase 名稱為所有 Roblox API。camelCase API 大多數已棄用。
- 使用 camelCase 名稱為本地變量、會員值和 函數 。
- 使用 LOUD_SNAKE_CASE 名稱為本地變數(具有您期望不會變更的值)。
- 不要在名稱中帶有整個 acronym 。 例如,請在 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 使用本地範圍更快速獲取資料。 要在變數上建立本地範圍,請在變數名稱前加上 1> local
local nilVarlocal x = 10local word = "Hello"local reference = workspace.Cameraprint(nilVar) -- 零print(x) -- 10print(word) -- 你好print(reference) -- Camera
將值分配至多個變量
您可以在一行中將值分配到多個變數,例如將每個變數價值對分開於一個斐號。如果您有多個變數價值,則 Luau 會分配 nil 到額外變數。如果您有多個變數價值,則 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