Menu
CoddyTech

Tabel dengan Bentuk Campuran

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

Array menyimpan banyak nilai dengan tipe yang sama, sedangkan map menyimpan satu tipe kunci dan satu tipe nilai. Namun, tabel Lua yang paling sering kamu gunakan mencampur tipe di dalam field bernama: pemain dengan nama string, skor number, dan flag boolean. Luau memberi tipe pada ini dengan bentuk: tipe tabel yang mencantumkan setiap field beserta tipenya sendiri.

type Point = {x: number, y: number}

local origin: Point = {x = 0, y = 0}
print(origin.x)

Kata kunci type membuat alias tipe: nama yang dapat digunakan kembali untuk bentuk tersebut. Alias ini hanya ada untuk pemeriksa tipe: tidak ada nilai saat runtime bernama Point yang dibuat. Setiap field dapat memiliki tipe yang berbeda:

type Player = {name: string, score: number, active: boolean}

local player: Player = {name = "Rio", score = 1500, active = true}
print(`{player.name} has {player.score} points`)

Setelah bentuknya dideklarasikan, pemeriksa tipe mengetahui bahwa player.score adalah number dan menandai kesalahan sejak awal: salah ketik seperti player.scroe (field itu tidak ada), atau menetapkan player.score = "high" (tipe tidak cocok). Ini baru pengenalan awal: bab selanjutnya membahas bentuk, field opsional, dan method dengan lebih mendalam.

challenge icon

Tantangan

Mudah

Deskripsikan seorang pemain dengan tipe bentuk.

  1. Tulis type Player = {name: string, score: number, active: boolean}.
  2. Buat local player: Player = {name = "Kai", score = 900, active = false}.
  3. Cetak player.active, lalu `{player.name} has {player.score} points`.

Tekan Jalankan Kode: output menampilkan false dan Kai has 900 points.

Coba sendiri

-- 1) type Player = {...}
-- 2) local player: Player = {...}
-- 3) cetak flag active, lalu baris ringkasan

Semua pelajaran di Pengantar Luau

Latihan sendiri: Compiler Luau online