Varsayılan Parametre Değerleri
Coddy'nin Lua Journey'sinin Luau'ya Giriş bölümünün bir parçası. Ders 27 / 80.
İsteğe bağlı parametreler, ele alman için sana bir nil bırakır. Çoğu zaman aslında istediğin bir yedek değerdir: “çağıran belirtmediyse X varsay”. Luau’da imzada varsayılan değer sözdizimi yoktur (greeting: string = "Hello" diye bir şey yoktur); bunun yerine, artık türlerle birlikte klasik Lua deyimini kullanırsın:
function greet(name: string, greeting: string?): string
greeting = greeting or "Hello"
return `{greeting}, {name}`
end
print(greet("Alice")) -- Merhaba, Alice
print(greet("Alice", "Howdy")) -- Selam, AliceParametre isteğe bağlı olarak belirtilir (string?) ve gövdenin ilk satırı nil değerini varsayılan değerle değiştirir. Bu işe yarar, çünkü nil false olarak değerlendirilir: nil or "Hello" ifadesi "Hello" değerini verir. Bu satırdan sonra denetleyici, greeting değerinin artık nil olamayacağını bilir.
Görev
Kolayİsteğe bağlı bir parametreye varsayılan bir değer ver.
local function calculateTax(price: number, rate: number?): numberyaz.- İlk satırı
rate = rate or 0.05olsun; ardındanprice * ratedeğerini döndür. calculateTax(100)vecalculateTax(200, 0.08)değerlerini yazdır.
Kodu Çalıştır düğmesine bas: çıktıda önce 5, ardından 16 görünür.
Kendin dene
-- 1) calculateTax(price: number, rate: number?): number
-- `or` kullanımıyla varsayılan rate değeri 0.05
-- 2) calculateTax(100) ve calculateTax(200, 0.08) sonuçlarını 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