Variabel

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Sebuah variabel adalah nama yang menyimpan nilai. Nilai variabel dapat berupa angka, string, boolean, tipe data, dan lainnya.

Nama variabel

Nama variabel dapat berupa string huruf, digit, dan garis bawah yang tidak diawali dengan digit dan tidak merupakan kata yang sudah dicadangkan.

LETTERS -- valid
a1 -- valid
var_name -- valid
_test -- valid
if -- TIDAK valid
25th -- TIDAK valid

Nama variabel bersifat sensitif terhadap huruf besar/kecil, jadi TestVar dan TESTVAR adalah nama yang berbeda. Hindari memberi nama variabel dengan garis bawah dan semua huruf kapital, seperti _VERSION, karena Luau mungkin mencadangkannya untuk variabel global internal.

Praktik terbaik

Praktik terbaik adalah mengeja kata-kata secara lengkap. Singkatan umumnya membuat kode lebih mudah ditulis, tetapi lebih sulit dibaca. Mengikuti praktik penamaan yang umum saat memberi nama variabel dapat membantu Anda dan orang lain memahami makna atau tujuannya:

  • Gunakan nama PascalCase untuk objek kelas dan enum-like.
  • Gunakan nama PascalCase untuk semua API Roblox. API camelCase sebagian besar sudah tidak digunakan lagi.
  • Gunakan nama camelCase untuk variabel lokal, nilai anggota, dan fungsi.
  • Gunakan nama LOUD_SNAKE_CASE untuk konstanta, seperti nilai const atau nilai lain yang tidak Anda harapkan untuk berubah.
  • Jangan kapitalisasi seluruh akronim dalam nama. Misalnya, tulis aJsonVariable atau MakeHttpCall.

Nama yang dicadangkan

Luau mencadangkan kata kunci berikut, jadi Anda tidak dapat menggunakannya untuk memberi nama variabel atau fungsi:

  • and
  • for
  • or
  • break
  • function
  • repeat
  • do
  • if
  • return
  • else
  • in
  • then
  • elseif
  • local
  • true
  • end
  • nil
  • until
  • false
  • not
  • while

Menetapkan nilai

Untuk membuat variabel dan menetapkan nilai padanya, gunakan operator =. Letakkan variabel di sebelah kiri = dan nilai di sebelah kanan. Jika Anda tidak menetapkan nilai, nilai tersebut adalah nil.

Variabel dapat memiliki ruang lingkup (scope) global atau lokal scopes. Secara default, mereka memiliki ruang lingkup global, tetapi hampir selalu lebih baik untuk membuatnya dengan ruang lingkup lokal karena Luau mengakses variabel lokal lebih cepat daripada yang global. Untuk memberikan variabel ruang lingkup lokal, letakkan kata kunci local sebelum nama variabel saat Anda menetapkan nilai padanya. Untuk memberikan ruang lingkup lokal dan juga mencegah penetapan ulang, gunakan const alih-alih local. Untuk informasi lebih lanjut, lihat Ruang Lingkup.

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

Menetapkan nilai ke beberapa variabel

Anda dapat menetapkan nilai ke beberapa variabel dalam satu baris dengan memisahkan setiap pasangan variabel-nilai dengan koma. Jika Anda memiliki lebih banyak variabel daripada nilai, maka Luau menetapkan nil ke variabel tambahan. Jika Anda memiliki lebih banyak nilai daripada variabel, Luau tidak menetapkan nilai tambahan ke variabel mana pun.

local a, b, c = 1, 2, 3
local d, e, f = 4, 5 -- variabel tambahan
local g, h = 7, 8, 9 -- nilai tambahan
print(a, b, c) -- 1, 2, 3
print(d, e, f) -- 4, 5, nil
print(g, h) -- 7, 8

Mengubah nilai

Untuk mengubah nilai dari sebuah variabel, tetapkan nilai lain padanya.

local x, y = 10, 20
print(x) -- 10
print(y) -- 20
x = 1000
y = 2000
print(x) -- 1000
print(y) -- 2000

Variabel const

Untuk membuat variabel yang tidak dapat Anda tetapkan ulang, gunakan const alih-alih local. Mencoba untuk menetapkan ulang variabel const menyebabkan kesalahan, termasuk melalui operator penetapan gabungan seperti +=.

const MAX_HEALTH = 100
MAX_HEALTH = 50 -- kesalahan: tidak dapat menetapkan ulang variabel const
MAX_HEALTH += 1 -- kesalahan: tidak dapat menetapkan ulang variabel const

Seperti local, const menerima anotasi tipe, seperti const MAX_HEALTH: number = 100.

Anda juga dapat mendeklarasikan fungsi dengan const, yang mencegah penetapan ulang nama fungsi tersebut.

const function addOneAndTwo()
local result = 1 + 2
print(result)
end
addOneAndTwo = nil -- kesalahan: tidak dapat menetapkan ulang variabel const

const membuat variabel itu sendiri tidak dapat diubah, bukan nilai yang dipegangnya. Jika variabel const memegang sebuah tabel, Anda masih dapat mengubah isi tabel tersebut. Untuk membuat isi tabel juga tidak dapat diubah, gunakan table.freeze().

const SETTINGS = { volume = 0 }
SETTINGS.volume = 1 -- ok, mengubah nilai di dalam tabel
SETTINGS = {} -- kesalahan: tidak dapat menetapkan ulang variabel const

Berbeda dengan kata kunci dalam Nama yang dicadangkan, const bersifat kontekstual. Luau hanya memperlakukannya sebagai kata kunci di mana local valid, jadi kode yang ada yang menggunakan const sebagai nama variabel tetap berfungsi.

local const = 1
print(const) -- 1
const = 2 -- ok, `const` adalah nama variabel di sini

Untuk informasi lebih lanjut dan kasus tepi, lihat dokumentasi Luau.

©2026 Roblox Corporation. Roblox, logo Roblox, dan Powering Imagination termasuk dalam merek dagang kami yang terdaftar dan tidak terdaftar di AS dan negara lainnya.