Birleşim Tipleri (Union Types)
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 33 / 80.
Bazen tek bir tür yeterli olmaz. Bir kullanıcı kimliği "user123" veya 42 olarak gelebilir. Düz Lua'da en iyisini umarsınız; Luau size birleşim türleri sunar: | dikey çizgisi "veya" anlamına gelir:
local userId: number | string
userId = "user123" -- ✓ string türüne izin verilir
userId = 42 -- ✓ number türüne izin verilir
userId = true -- ✗ tür hatası: boolean birleşim türünde yer almıyorDeğişken birleşimdeki üyelerden herhangi birini tutabilir ve yalnızca bunları tutabilir. any türünden temel farkı budur: Birleşim, ihtiyacınız olan esnekliği sağlarken nelerin kullanılabileceği konusunda katı kalır.
Birleşimler, birden fazla girdi biçimini kabul eden işlev parametreleri için özellikle kullanışlıdır:
function printId(id: number | string): ()
print(id)
end
printId(42) -- bir sayıyla çalışır
printId("user123") -- bir dizeyle çalışırstring? türünü zaten biliyorsunuz. Bu, ilk birleşiminizdi! string | nil ifadesinin kısa yazımıdır. Bir sonraki derste, birleşim değerine sahip olduğunuzda bu değerle güvenli bir şekilde nasıl çalışacağınızı öğreneceksiniz.
Görev
KolaySayı veya metin olan bir değeri kabul et.
iddeğerini yazdıranlocal function printId(id: number | string): ()yaz.local status: string | number = "active"tanımla.printId(7)veprintId("player7")çağır, ardındanstatus = 200olarak ayarla ve yazdır.
Kodu Çalıştır düğmesine bas: çıktı 7, player7 ve 200 değerlerini gösterir.
Kendin dene
-- 1) printId(id: number | string): ()
-- 2) local status: string | number = "active"
-- 3) printId(7) ve printId("player7") fonksiyonlarını çağır, status değerini 200 olarak ayarla ve yazdır
Luau'ya Giriş bölümündeki tüm dersler
1Luau ile Başlarken
Luau Nedir?Neden Luau Kullanılmalı?İlk Luau KodunuzTip Denetimi ve Hata ModlarıÖzet: Luau'ya Giriş4Fonksiyonlarla Çalışma
Parametreleri ve Dönüş Değerlerini Tür BelirtmeAnonim Fonksiyonları Tür BelirtmeDeğer Döndürmeyen Fonksiyonlarİsteğe Bağlı ParametrelerVarsayılan Parametre DeğerleriBoolean Değerler için VarsayılanlarDeğişken Sayıda Parametre Alan FonksiyonlarFonksiyon Türlerini TanımlamaTekrar: Tür Belirtilmiş Fonksiyonlar2Temel Türler
Number, String ve Boolean'any' Türü: Kaçış Yolu'unknown' TürüNil ve İsteğe Bağlı TürlerTür Çıkarımı UygulamadaAçık Tür Ek AçıklamalarıTekrar: Temel Türler Alıştırması5Diğer Adlar (Aliases), Birleşimler, Kesişimler
İlkel Tipler için Tip Diğer Adları (Type Aliases)Birleşim Tipleri (Union Types)Birleşim Tipleri ile ÇalışmakLiteral (Sabit) TiplerKesişim Tipleri (Intersection Types)Tip Diğer Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları3Türlenmiş Tablolar: Diziler ve Map’ler
Türlenmiş DizilerÖğe Ekleme ve OkumaMap Türü Nedir?Map’leri Tanımlama ve ErişmeTablolar Üzerinde YinelemeKarma Şekilli TablolarBir Izgarayı OkumaBir Izgara Oluşturmatable.unpackÖzet: Diziler ve Map’lerKendi başına pratik yap: Online Luau derleyicisi