Menu
CoddyTech

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
end

Se 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.

challenge icon

Sfida

Facile

Scrivi due funzioni che stampano e non restituiscono nulla.

  1. Scrivi local function displayWelcome(userName: string): () che stampa `Welcome, {userName}!`.
  2. Scrivi local function logError(errorMessage: string): () che stampa `ERROR: {errorMessage}`.
  3. Chiama displayWelcome("Alice"), poi logError("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

Esercitati da solo: Compilatore Luau online