Fonctions sans valeur de retour
Fait partie de la section Introduction à Luau du Journey Lua de Coddy. Leçon 25 sur 80.
De nombreuses fonctions ne calculent aucune valeur. Elles font quelque chose : elles affichent un message, mettent à jour une table, enregistrent un état. En Luau, tu peux annoter une fonction qui ne renvoie rien avec le type de retour vide () :
local function logMessage(message: string): ()
print(message)
end
local counter = 0
local function incrementCounter(): ()
counter += 1
endSi tu connais TypeScript, () joue le rôle de void, mais en Luau, il s’écrit sous la forme d’une paire de parenthèses vides, littéralement « zéro valeur de retour ».
L’annotation est facultative : omets-la et Luau déduira que la fonction ne renvoie rien. Écrire explicitement : () documente ton intention : toute personne qui lit 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 tu essaies de récupérer son résultat, comme en Lua classique.
Défi
FacileÉcris deux fonctions qui affichent un texte et ne renvoient rien.
- Écris
local function displayWelcome(userName: string): ()qui affiche`Welcome, {userName}!`. - Écris
local function logError(errorMessage: string): ()qui affiche`ERROR: {errorMessage}`. - Appelle
displayWelcome("Alice"), puislogError("Invalid input").
Appuie sur Exécuter le code : le résultat affiche Welcome, Alice! et ERROR: Invalid input.
Essayez vous-même
-- 1) displayWelcome(userName: string): ()
-- 2) logError(errorMessage: string): ()
-- 3) appeler displayWelcome("Alice"), puis logError("Invalid input")
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
Typer les paramètres et les valeurs de retourTyper les fonctions anonymesFonctions sans valeur de retourParamètres optionnelsValeurs par défaut des paramètresValeurs par défaut pour les booléensFonctions variadiquesDéfinir des types de fonctionsRécapitulatif : fonctions typées7Projet : gestionnaire de tâches typé
Projet : la structure d’une tâcheFonction pour ajouter une tâche2Types fondamentaux
Nombre, chaîne de caractères et booléenLe type « any » : une échappatoireLe type « unknown »Types nil et optionnelsL’inférence de types en actionAnnotations de type explicitesRécapitulatif : exercices sur les 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ésAjouter et lire des élémentsQu’est-ce qu’un type Map ?Déclarer et accéder aux mapsParcourir les tablesTables de formes mixtesLire une grilleConstruire une grilletable.unpackRécapitulatif : tableaux et mapsEntraînez-vous par vous-même : Compilateur Luau en ligne