Menu
CoddyTech

table.unpack

Termasuk bagian Pengantar Luau dalam perjalanan Lua di Coddy. Pelajaran 21 dari 80.

Terkadang kamu memiliki nilai dalam array, tetapi membutuhkannya sebagai nilai yang terpisah: misalnya, untuk meneruskan setiap elemen sebagai argumennya sendiri. Itulah fungsi table.unpack: fungsi ini mengembalikan semua elemen array secara terpisah.

local scores: {number} = {85, 92, 78}
print(table.unpack(scores))           -- 85  92  78 (satu baris)
print(math.max(table.unpack(scores))) -- 92

print menerima tiga argumen, jadi fungsi ini mencetaknya dalam satu baris dengan tab di antaranya. math.max membutuhkan angka yang terpisah, bukan array, jadi unpacking membuat pemanggilan ini berhasil.

table.unpack membaca array tanpa mengubahnya. Arah sebaliknya, yaitu fungsi yang menerima argumen dalam jumlah berapa pun dengan ..., dibahas dalam pelajaran Variadic Functions di bab berikutnya.

challenge icon

Tantangan

Mudah

Sebarkan array skor menjadi nilai-nilai terpisah.

  1. Deklarasikan local scores: {number} = {64, 88, 71}.
  2. Cetak table.unpack(scores).
  3. Cetak math.max(table.unpack(scores)).

Tekan Jalankan Kode: output menampilkan 64 88 71 pada satu baris, lalu 88.

Coba sendiri

-- 1) deklarasikan scores: {number} = {64, 88, 71}
-- 2) tampilkan nilai scores yang telah di-unpack, lalu nilai math.max-nya

Semua pelajaran di Pengantar Luau

Latihan sendiri: Compiler Luau online