Fonctions ne retournant rien
Fait partie de la section Introduction à Luau du Journey Lua de Coddy. Leçon 24 sur 73.
De nombreuses fonctions ne calculent aucune valeur. Elles font quelque chose : afficher un message, mettre à jour une table, enregistrer un état. En Luau, vous pouvez annoter le fait qu’une fonction ne renvoie rien avec le type de retour vide () :
function logMessage(message: string): ()
print(message)
end
local counter = 0
function incrementCounter(): ()
counter += 1
endSi vous connaissez TypeScript, () joue le rôle de void, mais l’écriture Luau est une paire de parenthèses vides, littéralement « zéro valeur de retour ».
L’annotation est facultative : omettez-la et Luau déduit que la fonction ne renvoie rien. Écrire explicitement : () documente votre intention : toute personne lisant la signature sait que cette fonction est appelée pour ses effets de bord, et non pour son résultat.
À l’exécution, rien ne change (comme d’habitude) : une fonction sans valeur de return produit simplement nil si vous essayez de récupérer son résultat : comme en Lua standard.
Défi
FacileCrée une fonction nommée displayWelcome qui prend userName: string et possède un type de retour explicite (). Elle doit afficher : "Welcome to our application, [userName]!"
Crée une fonction nommée logError qui prend errorMessage: string avec le type de retour (). Elle doit afficher : "ERROR: [errorMessage]"
Crée une fonction nommée processData qui ne prend aucun paramètre et dont le type de retour est (). Elle doit afficher "Processing data...", puis "Data processing complete." à la ligne suivante.
Appelle-les dans cet ordre :
displayWelcome("Alice")processData()logError("Invalid input detected")displayWelcome("Bob")
Essayez vous-même
-- Écrivez le code ici
-- displayWelcome(userName: string): ()
-- logError(errorMessage: string): ()
-- processData(): ()
-- puis appeler : displayWelcome("Alice"), processData(),
-- logError("Invalid input detected"), displayWelcome("Bob")
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Introduction à Luau
1Premiers pas avec Luau
Qu'est-ce que Luau ?Pourquoi utiliser Luau ?Votre premier code LuauVérification de type et modes d'erreurRécapitulatif : Introduction à Luau4Travailler avec les fonctions
Typage des paramètres et valeurs de retourTypage des fonctions anonymesFonctions ne retournant rienParamètres optionnelsValeurs par défaut des paramètresFonctions variadiquesDéfinition des types de fonctionsRécapitulatif : Fonctions typées2Types fondamentaux
Types de base : num, str, boolLe type 'any' : la porte de sortieLe type 'unknown'Types Nil et optionnelsL'inférence de type en actionAnnotations explicites de typeRécapitulatif : Pratique des types fondamentaux5Alias, unions et intersections
Alias de types pour les types primitifsTypes unionsTravailler avec les types unionsTypes littérauxTypes intersectionsCombinaison d'alias de typesRécapitulatif : Combinaisons de types avancées3Tables typées : Tableaux et Maps
Tableaux typésAjout et lecture d'élémentsQu'est-ce qu'un type Map ?Déclaration et accès aux MapsItération sur les tablesTables à formes mixtesTableaux typés multidimensionnelstable.unpack et VarargsRécapitulatif : Tableaux et MapsEntraînez-vous par vous-même : Compilateur Lua en ligne