Boolean Değerler için Varsayılanlar
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 28 / 80.
Lua'dan bildiğin bir noktaya dikkat: or ayrıca false değerini de değiştirir. Varsayılan değeri true olması gereken bir boolean? parametresi için flag = flag or true, açıkça belirtilen bir false değerini true yapar; çünkü false or true ifadesinin sonucu true olur:
local function sendAlert(message: string, loud: boolean?)
loud = loud or true -- sendAlert("Hi", false) yine de true değerini alır
print(message, loud)
endBunun yerine açık bir nil denetimi kullan. Bu, varsayılan değeri yalnızca argüman verilmediğinde atar:
local function sendAlert(message: string, loud: boolean?)
if loud == nil then
loud = true
end
print(message, loud)
end
sendAlert("Hi") -- Hi true
sendAlert("Hi", false) -- Hi falseDizeler ve sayılar için or güvenlidir; çünkü yalnızca nil ve false falsy değerlerdir.
Görev
KolayBir boolean parametreye, false değerinin değiştiremeyeceği varsayılan bir true değeri ver.
local function shippingCost(weight: number, insured: boolean?): numberyaz.- Fonksiyona
if insured == nil then insured = true endile başla. insuredtrue iseweight * 0.5 + 2, değilseweight * 0.5döndür.shippingCost(4)veshippingCost(4, false)değerlerini yazdır.
Kodu Çalıştır düğmesine bas: çıktı 4 ve 2 ile biter.
Kendin dene
-- `or` kalıbıyla varsayılan değer
local function calculateTax(price: number, rate: number?): number
rate = rate or 0.05
return price * rate
end
print(calculateTax(100))
print(calculateTax(200, 0.08))
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