nil

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

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 を使用してオブジェクトのいくつかのプロパティをクリアすることができます。たとえば、オブジェクトの Parentnil に設定することで、実質的にそのオブジェクトをゲームから削除することができます。削除した後にオブジェクトをゲームに戻すには、Parent を再割り当てします。以下の例は、Part を削除するために nil を使用する方法を示しています。


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は、米国並びにその他の国における登録商標および非登録商標です。