Menu
Coddy logo textTech

nil によるペアの削除

CoddyのLuaジャーニー「基礎」セクションの一部。レッスン 69/90。

キーに nil を代入すると、Luaは実質的にそのキーと値のペアをテーブルから削除します:

local settings = {
    ["volume"] = 80,
    ["difficulty"] = "normal",
    ["music"] = true
}

-- difficulty の設定を削除する
settings.difficulty = nil

-- これで difficulty キーはテーブルに存在しなくなった

ドット記法またはブラケット記法のいずれかを使って、キーと値のペアを削除できます。settings.difficulty = nilsettings["difficulty"] = nil は、どちらもまったく同じように機能します。

キーに nil を代入すると、そのキーはテーブルから完全に消えます。後でそのキーにアクセスしようとすると、最初からキーが存在しなかった場合と同じように、結果として nil が返されます。

challenge icon

チャレンジ

簡単

辞書形式のテーブルから不要な設定を削除する方法を示すゲーム設定システムを作成します。まず、次のキーと値のペアを持つ gameConfig という名前のテーブルを作成します。["graphics"] には文字列 "high" を、["sound"] には数値 75 を、["difficulty"] には文字列 "normal" を、["debug"] にはブール値 true を割り当てます。

初期設定テーブルを作成したら、ドット記法を使って nil を代入し、debug 設定を削除します。次に、テーブルに他の値がまだ含まれていることを確認するため、残っているサウンド設定を出力します。

自分で試してみよう

-- TODO: ここにコードを書いてください
-- 必要なキーと値のペアを持つ gameConfig テーブルを作成する
-- ドット記法を使用して debug 設定を削除する
-- sound 設定を出力する
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ