Di Luau, nil mewakili ketidakberadaan atau kekosongan.Ini berbeda dari nilai atau ketikdata lainnya.Anda dapat menggunakannya untuk menghancurkan variabel atau menghapus nilai di tabel.Ini adalah satu-satunya nilai selain false yang tidak mengevaluasi menjadi true .
Luau memiliki pengumpul sampah yang menghapus data yang tidak lagi dapat diakses oleh skrip apa pun.Untuk pelaksanaanterbaik, redefinisikan variabel besar sebagai nil di skrip berjalan lama ketika Anda tidak membutuhkannya lagi sehingga pengumpul sampah menghapusnya.
local variableToDelete = 5print(variableToDelete) -- 5variableToDelete = nilprint(variableToDelete) -- tidak adalocal dictionaryTable = {Monday = 1,Tuesday = 2,Wednesday = 3}-- Nilai output dari unit'Selasa'print(dictionaryTable.Tuesday) -- 2-- Hapus kunci 'Selasa'dictionaryTable.Tuesday = nil-- Nilai output kunci lagiprint(dictionaryTable.Tuesday) -- nil
Anda dapat menggunakan nil untuk membersihkan beberapa properti objek.Sebagai contoh, Anda dapat mengatur Parent dari objek ke nil untuk menghapus objek dari pengalaman secara efektif.Untuk mengembalikan objek ke pengalaman setelah Anda menghapusnya, atribusikan ulang Parent .Contoh berikut menunjukkan cara menggunakan nil untuk menghapus Part:
local Workspace = game:GetService("Workspace")-- Buat bata barulocal part = Instance.new("Part")-- Bagian baru orang tua ke ruang kerja, membuatnya dapat dilihatpart.Parent = Workspacetask.wait(1)-- Hapus bagian dari pandangan tetapi tidak dari memoripart.Parent = niltask.wait(1)-- Bagian masih ada karena di referensikan oleh variabel "bagian", sehingga bisa dikembalikan ke pandanganpart.Parent = Workspacetask.wait(1)-- Hapus bagian dari pandangan lagipart.Parent = nil-- Hapus referensi bagian sehingga dapat diambil oleh pengumpul sampahpart = nil