Luau에서 nil는 존재하지 않음이나 공허를 나타냅니다.다른 값이나 데이터 입력다릅니다.변수를 파괴하거나 테이블에서 값을 제거하는 데 사용할 수 있습니다.그것은 false 이외의 유일한 값으로, 평가되지 않는 true 입니다.
Luau에는 가비지 수집기 가 있어 더 이상 스크립트에서 액세스할 수 없는 데이터를 제거합니다.최고의 이행위해, 더 이상 필요하지 않으면 긴 실행 스크립트에서 대형 변수를 nil로 다시 정의하여 가비지 수집기가 제거합니다.
local variableToDelete = 5print(variableToDelete) -- 5variableToDelete = nilprint(variableToDelete) -- 무효local dictionaryTable = {Monday = 1,Tuesday = 2,Wednesday = 3}-- 화요일' 키의 출력 값print(dictionaryTable.Tuesday) -- 2-- 화요일' 키 지우기dictionaryTable.Tuesday = nil-- 키의 출력 값 다시print(dictionaryTable.Tuesday) -- nil
nil를 사용하여 개체의 일부 속성을 지우실 수 있습니다.예를 들어, 개체의 Parent 를 효과적으로 제거하기 위해 개체의 nil 를 설정할 수 있습니다.개체를 제거한 후 경험에 반환하려면 Parent를 다시 할당하십시오.다음 예제에서는 nil를 사용하여 Part를 제거하는 방법을 보여줍니다.
local Workspace = game:GetService("Workspace")-- 새 벽돌 만들기local part = Instance.new("Part")-- 작업 영역에 부모 새 부품을 추가하여 표시 가능하게 함part.Parent = Workspacetask.wait(1)-- 뷰에서 부품을 제거하지만 메모리에서는 제거하지 않음part.Parent = niltask.wait(1)-- 부품은 여전히 존재하며, 변수 "부품"에 의해 참조되므로 뷰에 반환될 수 있습니다part.Parent = Workspacetask.wait(1)-- 부품을 다시 보기에서 제거part.Parent = nil-- 가비지 수집기에서 선택하도록 부품 참조 지우기part = nil