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 pas de valeur — elles font quelque chose : afficher un message, mettre à jour une table, sauvegarder un état. En Luau, vous pouvez annoter qu'une fonction ne retourne nothing 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 la syntaxe Luau est une paire de parenthèses vides, signifiant littéralement « zéro valeur de retour ».
L'annotation est optionnelle : si vous l'omettez, Luau déduit que la fonction ne retourne rien. Écrire : () explicite clairement votre intention — quiconque lit la signature sait que cette fonction est appelée pour ses effets secondaires, 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 capturer son résultat — tout comme en Lua classique.
Défi
FacileCréez une fonction nommée displayWelcome qui prend userName: string et a un type de retour explicite de (). Elle doit afficher : "Welcome to our application, [userName]!"
Créez une fonction nommée logError qui prend errorMessage: string avec un type de retour (). Elle doit afficher : "ERROR: [errorMessage]"
Créez une fonction nommée processData qui ne prend aucun paramètre, avec un type de retour (). Elle doit afficher "Processing data..." puis "Data processing complete." sur la ligne suivante.
Appelez-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 Maps