Menu
Coddy logo textTech

Accès avec la notation par point

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

Lua offre une alternative plus pratique appelée notation par point. C'est une manière plus propre et plus lisible d'accéder aux valeurs lorsque vos clés sont des chaînes de caractères simples.

Au lieu d'écrire player["score"], vous pouvez simplement écrire player.score :

local player = {
    ["name"] = "Alex",
    ["score"] = 1500,
    ["level"] = 8
}

print(player.name)   -- affiche : Alex
print(player.score)  -- affiche : 1500

La notation par point est ce que les programmeurs appellent du « sucre syntaxique » - c'est une façon plus agréable d'écrire la même chose. Cependant, cela ne fonctionne que lorsque votre clé est un identifiant Lua valide, ce qui signifie qu'elle ne contient que des lettres, des chiffres et des underscores, et qu'elle ne commence pas par un chiffre.

local book = {
    ["title"] = "Lua Programming",
    ["pages"] = 300
}

local bookTitle = book.title
print(bookTitle)  -- affiche : Lua Programming
challenge icon

Défi

Facile

Créez un système de gestion de bibliothèque qui démontre l'accès aux informations d'un livre en utilisant la notation par point. Tout d'abord, créez une table nommée book avec les paires clé-valeur suivantes : ["title"] doit se voir attribuer la chaîne "The Lua Guide", ["author"] doit se voir attribuer la chaîne "Roberto Ierusalimschy", ["pages"] doit se voir attribuer le nombre 328, et ["year"] doit se voir attribuer le nombre 2016. Après avoir créé la table, utilisez la notation par point pour accéder au titre du livre et l'afficher.

Aide-mémoire

Lua propose la notation par point comme une alternative plus propre à la notation par crochets pour accéder aux valeurs d'une table lorsque les clés sont des chaînes de caractères simples :

local player = {
    ["name"] = "Alex",
    ["score"] = 1500,
    ["level"] = 8
}

print(player.name)   -- affiche : Alex
print(player.score)  -- affiche : 1500

La notation par point ne fonctionne que lorsque votre clé est un identifiant Lua valide (ne contient que des lettres, des chiffres et des underscores, et ne commence pas par un chiffre) :

local book = {
    ["title"] = "Lua Programming",
    ["pages"] = 300
}

local bookTitle = book.title
print(bookTitle)  -- affiche : Lua Programming

Essayez vous-même

-- TODO : Créer la table book avec les paires clé-valeur requises

-- TODO : Utiliser la notation par point pour accéder au titre du livre et l'afficher
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