table.unpack
Fa parte della sezione Introduzione a Luau del percorso Lua di Coddy. Lezione 21 di 80.
A volte hai dei valori in un array, ma ti servono come valori separati: per esempio, per passare ogni elemento come argomento a sé. È quello che fa table.unpack: restituisce tutti gli elementi di un array, separati.
local scores: {number} = {85, 92, 78}
print(table.unpack(scores)) -- 85 92 78 (su una sola riga)
print(math.max(table.unpack(scores))) -- 92print riceve tre argomenti, quindi li stampa su una riga sola, separati da una tabulazione. math.max vuole numeri separati, non un array, quindi è proprio lo spacchettamento che rende possibile la chiamata.
table.unpack legge l’array senza modificarlo. Nella direzione opposta, una funzione che accetta un numero qualsiasi di argomenti con ... viene presentata nella lezione sulle funzioni variadiche del capitolo successivo.
Sfida
FacileEspandi un array di punteggi in valori separati.
- Dichiara
local scores: {number} = {64, 88, 71}. - Stampa
table.unpack(scores). - Stampa
math.max(table.unpack(scores)).
Premi Esegui codice: l'output mostra 64 88 71 su una riga, poi 88.
Provalo tu
-- 1) dichiara scores: {number} = {64, 88, 71}
-- 2) stampa i valori di scores separatamente, poi il loro math.max
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