Menu
CoddyTech

Karma Şekilli Tablolar

Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 18 / 80.

Diziler tek türden birçok değer tutar; eşlemeler ise tek bir anahtar türü ve tek bir değer türü tutar. Ancak en sık kullandığın Lua tabloları, adlandırılmış alanlarda farklı türleri bir araya getirir: dize türünde adı, sayı türünde puanı ve boole türünde bir bayrağı olan bir oyuncu gibi. Luau bunları bir şekil ile türlendirir: her alanı ve kendi türünü listeleyen bir tablo türü.

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

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

type anahtar sözcüğü bir tür takma adı oluşturur: şekil için yeniden kullanılabilir bir ad. Bu ad yalnızca denetleyici için vardır: Point adında bir çalışma zamanı değeri oluşturulmaz. Her alan farklı bir türe sahip olabilir:

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

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

Şekil tanımlandığında denetleyici, player.score değerinin bir sayı olduğunu bilir ve hataları erkenden bildirir: player.scroe gibi bir yazım hatası (böyle bir alan yoktur) veya player.score = "high" ataması (yanlış tür). Bu, konuya ilk bakış: sonraki bir bölümde şekiller, isteğe bağlı alanlar ve yöntemler çok daha ayrıntılı ele alınacak.

challenge icon

Görev

Kolay

Bir oyuncuyu şekil türüyle tanımla.

  1. type Player = {name: string, score: number, active: boolean} yaz.
  2. local player: Player = {name = "Kai", score = 900, active = false} oluştur.
  3. Önce player.active, ardından `{player.name} has {player.score} points` değerini yazdır.

Kodu Çalıştır düğmesine bas: çıktıda false ve Kai has 900 points görünür.

Kendin dene

-- 1) type Player = {...}
-- 2) local player: Player = {...}
-- 3) active bayrağını, ardından özet satırını yazdır

Luau'ya Giriş bölümündeki tüm dersler

Kendi başına pratik yap: Online Luau derleyicisi