Menu
Coddy logo textTech

Supprimer des paires avec nil

Fait partie de la section Fundamentals du Journey Lua de Coddy — leçon 69 sur 90.

Lorsque vous affectez nil à une clé, Lua supprime effectivement cette paire clé-valeur de la table :

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

-- Supprimer le paramètre de difficulté
settings.difficulty = nil

-- Maintenant, la clé de difficulté n'existe plus dans la table

Vous pouvez utiliser soit la notation par point, soit la notation par crochets pour supprimer une paire clé-valeur. Les deux settings.difficulty = nil et settings["difficulty"] = nil fonctionnent exactement de la même manière.

Après avoir assigné nil à une clé, cette clé disparaît complètement de la table. Si vous essayez d'y accéder plus tard, vous obtiendrez nil comme résultat, tout comme si la clé n'avait jamais existé au départ.

challenge icon

Défi

Facile

Créez un système de configuration de jeu qui démontre comment supprimer des paramètres indésirables d'une table de type dictionnaire. Commencez par créer une table nommée gameConfig avec les paires clé-valeur suivantes : ["graphics"] doit recevoir la chaîne "high", ["sound"] doit recevoir le nombre 75, ["difficulty"] doit recevoir la chaîne "normal", et ["debug"] doit recevoir le booléen true.

Après avoir créé la table de configuration initiale, supprimez le paramètre debug en lui assignant nil à l'aide de la notation par point. Ensuite, affichez le paramètre sound restant pour vérifier que la table contient toujours les autres valeurs.

Aide-mémoire

Pour supprimer une paire clé-valeur d'une table, affectez nil à la clé :

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

-- Supprimer le paramètre de difficulté
settings.difficulty = nil

Vous pouvez utiliser soit la notation par point, soit la notation par crochets :

settings.difficulty = nil
settings["difficulty"] = nil

Après avoir affecté nil, la clé disparaît complètement de la table. Y accéder renvoie nil.

Essayez vous-même

-- TODO : Écrivez votre code ici
-- Créez la table gameConfig avec les paires clé-valeur requises
-- Supprimez le paramètre debug en utilisant la notation par point
-- Affichez le paramètre sound
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fundamentals