Menu
CoddyTech

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))) -- 92

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

challenge icon

Sfida

Facile

Espandi un array di punteggi in valori separati.

  1. Dichiara local scores: {number} = {64, 88, 71}.
  2. Stampa table.unpack(scores).
  3. 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

Esercitati da solo: Compilatore Luau online