Funzioni che non restituiscono nulla
Fa parte della sezione Introduzione a Luau del percorso Lua di Coddy. Lezione 25 di 80.
Molte funzioni non calcolano un valore. Fanno qualcosa: stampano un messaggio, aggiornano una tabella, salvano lo stato. In Luau puoi annotare che una funzione non restituisce nulla con il tipo di ritorno vuoto ():
local function logMessage(message: string): ()
print(message)
end
local counter = 0
local function incrementCounter(): ()
counter += 1
endSe hai già visto TypeScript, () svolge il ruolo di void, ma in Luau si scrive con una coppia di parentesi vuote, letteralmente «zero valori restituiti».
L'annotazione è facoltativa: omettila e Luau deduce che la funzione non restituisce nulla. Scrivere : () in modo esplicito documenta la tua intenzione: chiunque legga la firma sa che questa funzione viene chiamata per i suoi effetti collaterali, non per il risultato.
In fase di esecuzione non cambia nulla (come al solito): una funzione senza un valore return produce semplicemente nil se provi a catturarne il risultato: come in Lua standard.
Sfida
FacileScrivi due funzioni che stampano e non restituiscono nulla.
- Scrivi
local function displayWelcome(userName: string): ()che stampa`Welcome, {userName}!`. - Scrivi
local function logError(errorMessage: string): ()che stampa`ERROR: {errorMessage}`. - Chiama
displayWelcome("Alice"), poilogError("Invalid input").
Premi Run Code: l'output mostra Welcome, Alice! e ERROR: Invalid input.
Provalo tu
-- 1) displayWelcome(userName: string): ()
-- 2) logError(errorMessage: string): ()
-- 3) chiama displayWelcome("Alice"), poi logError("Invalid input")
Tutte le lezioni di Introduzione a Luau
1Per iniziare con Luau
Che cos'è Luau?Perché usare Luau?Il tuo primo codice LuauVerifica dei tipi e modalità di erroreRiepilogo: introduzione a Luau4Lavorare con le funzioni
Tipizzare parametri e valori restituitiTipizzare le funzioni anonimeFunzioni che non restituiscono nullaParametri opzionaliValori predefiniti dei parametriValori predefiniti per i booleaniFunzioni variadicheDefinire i tipi di funzioneRiepilogo: funzioni tipizzate7Progetto: Gestore di attività tipizzato
Progetto: La struttura di un'attivitàFunzione per aggiungere un'attività2Tipi fondamentali
Numero, stringa e booleanoIl tipo 'any': una via di fugaIl tipo 'unknown'Tipi nil e opzionaliL’inferenza dei tipi in praticaAnnotazioni esplicite dei tipiRipasso: esercizi sui tipi fondamentali5Alias, unioni e intersezioni
Alias di tipo per i primitiviTipi unioneLavorare con i tipi unioneTipi letteraliTipi intersezioneCombinare gli alias di tipoRiepilogo: combinazioni avanzate di tipi3Tabelle tipizzate: array e mappe
Array tipizzatiAggiungere e leggere elementiChe cos'è un tipo map?Dichiarare e accedere alle mappeIterare sulle tabelleTabelle con forme misteLeggere una grigliaCreare una grigliatable.unpackRiepilogo: array e mappeEsercitati da solo: Compilatore Luau online