Tabel dengan Bentuk Campuran
Termasuk bagian Pengantar Luau dalam perjalanan Lua di Coddy. Pelajaran 18 dari 73.
Array menyimpan banyak nilai dengan satu tipe; map menyimpan satu tipe kunci dan satu tipe nilai. Namun, tabel Lua yang paling sering kamu gunakan mencampurkan tipe dalam field bernama: pemain dengan nama string, skor number, dan flag boolean. Luau memberi tipe pada semua ini menggunakan bentuk: tipe tabel yang mencantumkan setiap field beserta tipenya.
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 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 lebih awal: salah ketik seperti player.scroe (field tersebut tidak ada), atau menetapkan player.score = "high" (tipe salah). Ini baru pengenalan awal: bab berikutnya membahas bentuk, field opsional, dan method dengan lebih mendalam.
Tantangan
MudahTentukan alias tipe Player untuk bentuk dengan tiga field: name: string, score: number dan active: boolean.
Buat local player: Player dengan nama "Rio", skor 1500 dan active bernilai true.
Cetak, masing-masing pada baris tersendiri:
- nama pemain
- skor pemain
- flag active pemain
- baris persis
Rio has 1500 pointsyang dibuat dengan interpolasi string dari field-field tersebut
Coba sendiri
-- Tulis kodemu di sini
-- 1) type Player = {name: string, score: number, active: boolean}
-- 2) buat player: Player = {name = "Rio", score = 1500, active = true}
-- 3) tampilkan name, score, active, lalu baris ringkasan dengan interpolasi
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Pengantar Luau
1Memulai dengan Luau
Apa Itu Luau?Mengapa Menggunakan Luau?Kode Luau PertamamuPemeriksaan Tipe dan Mode ErrorRangkuman: Pengenalan Luau4Bekerja dengan Fungsi
Menentukan Tipe Parameter dan Nilai KembalianMenentukan Tipe Fungsi AnonimFungsi yang Tidak Mengembalikan NilaiParameter OpsionalNilai Default ParameterFungsi VariadikMendefinisikan Tipe FungsiRangkuman: Fungsi Bertipe2Tipe Inti
Tipe Dasar: num, str, boolTipe 'any': Jalan Keluar DaruratTipe 'unknown'Nil & Tipe OpsionalInferensi Tipe dalam PraktikAnotasi Tipe EksplisitUlasan: Latihan Tipe Inti5Alias, Union, dan Intersection
Alias Tipe untuk Tipe PrimitifTipe UnionMenggunakan Tipe UnionTipe LiteralTipe IntersectionMenggabungkan Alias TipeRekap: Kombinasi Tipe Lanjutan3Tabel Bertipe: array dan Map
array BertipeMenambahkan dan Membaca ElemenApa Itu Tipe Map?Mendeklarasikan dan Mengakses MapMelakukan Iterasi pada TabelTabel dengan Bentuk Campuranarray Bertipe Multidimensitable.unpack dan VarargsRingkasan: array dan MapLatihan sendiri: Compiler Luau online