空值

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

在 Luau 中,nil 代表不存在或虛無。它不同於任何其他值或數據類型。您可以使用它來銷毀變量或從表中移除值。它是唯一除 false 之外,不能評估為 true 的值。

Luau 有一個 垃圾回收器,可以移除任何腳本無法再訪問的數據。為了獲得最佳性能,在長時間運行的腳本中,當您不再需要大型變量時,將其重新定義為 nil,以便垃圾回收器可以將其移除。


local variableToDelete = 5
print(variableToDelete) -- 5
variableToDelete = nil
print(variableToDelete) -- nil
local dictionaryTable = {
Monday = 1,
Tuesday = 2,
Wednesday = 3
}
-- 輸出 'Tuesday' 鍵的值
print(dictionaryTable.Tuesday) -- 2
-- 清除 'Tuesday' 鍵
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 = Workspace
task.wait(1)
-- 從視圖中移除該部分,但不從內存中移除
part.Parent = nil
task.wait(1)
-- 由於還是通過變量 "part" 引用,該部分仍然存在,因此可以返回視圖
part.Parent = Workspace
task.wait(1)
-- 再次從視圖中移除該部分
part.Parent = nil
-- 清除部分引用,以便它被垃圾回收器回收
part = nil
©2026 Roblox Corporation、Roblox、Roblox 標誌及 Powering Imagination 是我們在美國及其他國家地區的部分註冊與未註冊商標。