Nil

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Em Luau, nil representa não existência ou nada. É diferente de qualquer outro valor ou tipo de dado. Você pode usá-lo para destruir uma variável ou remover um valor em uma tabela. É o único valor além de false que não é avaliado como true.

Luau tem um coletor de lixo que remove dados que não estão mais acessíveis por nenhum script. Para melhor desempenho, redefina variáveis grandes como nil em scripts de longa duração quando você não precisar mais delas, para que o coletor de lixo as remova.


local variableToDelete = 5
print(variableToDelete) -- 5
variableToDelete = nil
print(variableToDelete) -- nil
local dictionaryTable = {
Monday = 1,
Tuesday = 2,
Wednesday = 3
}
-- Saída do valor da chave 'Tuesday'
print(dictionaryTable.Tuesday) -- 2
-- Limpar a chave 'Tuesday'
dictionaryTable.Tuesday = nil
-- Saída do valor da chave novamente
print(dictionaryTable.Tuesday) -- nil

Você pode usar nil para limpar algumas propriedades de objetos. Por exemplo, você pode definir o Parent de um objeto como nil para efetivamente remover o objeto do jogo. Para retornar o objeto ao jogo após removê-lo, reatribua o Parent. O seguinte exemplo demonstra como usar nil para remover uma Part:


local Workspace = game:GetService("Workspace")
-- Criar um novo bloco
local part = Instance.new("Part")
-- Definir o novo bloco como filho do workspace, tornando-o visível
part.Parent = Workspace
task.wait(1)
-- Remover o bloco da vista, mas não da memória
part.Parent = nil
task.wait(1)
-- O bloco ainda existe porque está referenciado pela variável "part", então pode ser retornado à vista
part.Parent = Workspace
task.wait(1)
-- Remover o bloco da vista novamente
part.Parent = nil
-- Limpar a referência do bloco para que ele seja coletado pelo coletor de lixo
part = nil
©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.