W Luau, nil reprezentuje niewystępującość lub niewystępującość. Jest inny od dowolnego innego wartości lub wpisywaćdanych. Możesz go użyć do zniszczenia zmiennej lub usunięcia wartości w tabeli. Jest to jedyny wartość inny niż false , który nie ocenia do true , .
Luau ma gromadźcę śmieci , który usuwa dane, które nie są już dostępne dla żadnego skryptu. Aby uzyskać najlepsze wykonywanie, zdefiniuj duże zmienne jako nil w długoterminowych skryptach, gdy nie są już wymagane, aby gromadźca śmieci je usunął.
local variableToDelete = 5print(variableToDelete) -- 5variableToDelete = nilprint(variableToDelete) -- nie malocal dictionaryTable = {Monday = 1,Tuesday = 2,Wednesday = 3}-- Wartość wyjścia klucza "Wtorek"print(dictionaryTable.Tuesday) -- 2-- Wyczyść klucz "Wtorek"dictionaryTable.Tuesday = nil-- Wartość wyjścia klucza ponownieprint(dictionaryTable.Tuesday) -- nil
Możesz użyć nil , aby usunąć niektóre właściwości obiektów. Na przykład możesz ustawić Parent obiektu na nil, aby skutecznie usunąć obiekt z doświadczenia. Aby powrócić do doświ
-- Utwórz nowy cegłalocal part = Instance.new("Part")-- Rodzice nową część do przestrzeni roboczej, która jest widocznapart.Parent = workspacetask.wait(1)-- Usuń część z widoku, ale nie z pamięcipart.Parent = niltask.wait(1)-- Część wciąż istnieje, ponieważ jest odniesiona przez zmienne "część", więc można ją zwrócić do zobaczeniapart.Parent = workspacetask.wait(1)-- Usuń część z widoku ponowniepart.Parent = nil-- Usuń odniesienie części, aby zostało podniesione przez zbieracz śmiecipart = nil