'unknown' Tipi
Coddy'nin JavaScript Journey'sinin TypeScript'e Giriş bölümünün bir parçası — ders 8 / 73.
any gibi, unknown türündeki bir değişken herhangi bir değeri tutabilir:
let userInput: unknown = "Hello";
userInput = 42; // Hata yok
userInput = true; // Hata yokTemel fark, TypeScript'in gerçekte hangi türde olduğunu kontrol etmeden bir unknown değeri üzerinde işlem yapmanıza izin vermemesidir. Bu, birçok çalışma zamanı hatasını önler:
let data: unknown = "TypeScript";
// data.toUpperCase(); // Hata! TypeScript bunun bir string olduğunu bilmiyor
// Önce türü kontrol etmelisiniz
if (typeof data === "string") {
console.log(data.toUpperCase()); // Artık güvenli!
}Bu, unknown türünü any türünden çok daha güvenli hale getirir çünkü türe özgü metotları veya özellikleri kullanmadan önce türü doğrulamanızı zorunlu kılar.
Görev
KolayuserInput adında, unknown türünde bir değişken oluşturun ve ona "TypeScript" dizesini atayın.
Ardından, userInput değişkeninin bir dize olup olmadığını kontrol etmek için typeof kullanarak bir tür koruması (type guard) yazın. Eğer bir dizeyse, dizenin büyük harfli halini konsola yazdırın. Eğer bir dize değilse, konsola "Not a string" yazdırın.
Bu, toUpperCase() gibi türe özgü yöntemleri güvenli bir şekilde kullanmadan önce unknown türünün nasıl tür denetimi gerektirdiğini gösterir.
Kendin dene
// unknown türünde userInput değişkenini oluşturun
let userInput: unknown = "TypeScript";
// YAPILACAK: Kodunuzu buraya yazın
// userInput'un bir dize olup olmadığını kontrol etmek için typeof kullanın
// Eğer bir dizeyse, büyük harf versiyonunu yazdırın
// Eğer bir dize değilse, "Not a string" yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
TypeScript'e Giriş bölümündeki tüm dersler
1TS ile Başlarken
TypeScript Nedir?Neden TypeScript Kullanılır?İlk TypeScript KodunuzDerleme Süreci ve HatalarÖzet: TS'ye Giriş4Fonksiyonlarla Çalışmak
Parametre ve Dönüş Değerlerini TiplendirmeArrow Fonksiyonlarını Tiplendirme'void' Dönüş Tipi'?' ile Opsiyonel ParametrelerVarsayılan Parametre DeğerleriRest Parametrelerini TiplendirmeFonksiyon Tiplerini TanımlamaÖzet: Tiplendirilmiş Fonksiyonlar Oluşturma2Temel Tipler
Temel Tipler: str, num, boolean'any' Tipi: Kaçış Yolu'unknown' Tipi'null' ve 'undef' ile ÇalışmakTip Çıkarımı İş BaşındaAçık Tip BelirlemeleriÖzet: Temel Tipler Pratiği5Tipler: Takma Adlar, Unionlar ve Kesişimler
İlkel Tipler için Tip Takma AdlarıUnion Tipler ('|')Union Tipler ile ÇalışmakLiteral TiplerKesişim Tipleri ('&')Tip Takma Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları3Veri Yapısı: Diziler ve Tuple
Tipli DizilerDiziler için 'readonly' BelirleyicisiTuple Nedir?Tuple Tanımlama ve ErişmeTuple DestructuringReadonly Tuple'larÇok Boyutlu Tipli DizilerDizilerle Spread OperatörüÖzet: Diziler ve Tuple'lar6Nesneleri ve Interface'leri Tiplendirme
Satır İçi Nesne Tipi BelirtimleriNesneler için Type Alias KullanımıInterface'lere GirişInterface'ler ve Type Alias'ların KarşılaştırılmasıOpsiyonel ve Readonly ÖzelliklerInterface ve Tipleri GenişletmeInterface'lere Metot EklemeÖzet: Nesne Yapılarını Tanımlama