Żadne

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

W Luau, nil reprezentuje nieistnienie lub pustkę.Różni się od dowolnej innej wartości lub wpisywaćdanych.Możesz go użyć do zniszczenia zmiennej lub usunięcia wartości w tabeli.Jest to jedyna wartość inna niż false, która nie ocenia się do true.

Luau ma gromadziciel śmieci , który usuwa dane, które nie są już dostępne dla żadnego skryptu.Aby uzyskać najlepsze wykonywanie, ponownie zdefiniuj duże zmienne jako nil w długo uruchamianych skryptach, gdy już ich nie potrzebujesz, aby zbieracz śmieci je usunął.


local variableToDelete = 5
print(variableToDelete) -- 5
variableToDelete = nil
print(variableToDelete) -- niezerowy
local dictionaryTable = {
Monday = 1,
Tuesday = 2,
Wednesday = 3
}
-- Wartość wyjściowa klucza 'Wtorek'
print(dictionaryTable.Tuesday) -- 2
-- Wyczyść klucz 'Wtorek'
dictionaryTable.Tuesday = nil
-- Wartość wyjściowa klucza ponownie
print(dictionaryTable.Tuesday) -- nil

Możesz użyć nil , aby oczyścić niektóre właściwości obiektów.Na przykład możesz ustawić Parent obiektu na nil w celu skutecznego usunięcia obiektu z doświadczenia.Aby zwrócić obiekt do doświadczenia po jego usunięciu, przypisz ponownie Parent.Poniższy przykład pokazuje, jak używać nil, aby usunąć Part:


local Workspace = game:GetService("Workspace")
-- Stwórz nową cegłę
local part = Instance.new("Part")
-- Rodzic nową część do przestrzeni roboczej, sprawiając, że jest ona widoczna
part.Parent = Workspace
task.wait(1)
-- Usuń część z widoku, ale nie z pamięci
part.Parent = nil
task.wait(1)
-- Część nadal istnieje, ponieważ jest odwoływana przez zmienną "część", więc można ją zwrócić do widoku
part.Parent = Workspace
task.wait(1)
-- Usuń część z widoku ponownie
part.Parent = nil
-- Wyczyść odniesienie części, aby zostało odebrane przez zbieracza śmieci
part = nil