CodeBlanks Logo Icon CodeBlanks

unknown'dan cast

unknown'dan güvenli şekilde cast etmeyi öğrenirsin.

unknown türü

unknown, any'nin tür güvenli halidir. Bir unknown değerini doğrudan kullanamazsın; önce onu daraltman (narrow) gerekir. Bu, typeof veya instanceof kontrolleriyle ya da as ile tür onaylayarak yapılır.

let gizli: unknown = "selam";
// gizli.toUpperCase();  hata!
if (typeof gizli === "string") {
  console.log(gizli.toUpperCase());
}

typeof ile daraltma

typeof operatörü ilkel türleri kontrol eder. Bir unknown değerini typeof gizli === "string" gibi bir koşulla daralttığında, TypeScript o blok içinde değerin string olduğunu bilir ve string metotlarına izin verir. Bu en güvenli daraltma yöntemidir.

Uygulama unknown'ı string'e daralt

gizli değişkeni unknown türünde ve değeri "merhaba". typeof ile string mi kontrol et; eğer öyleyse toUpperCase() metodunu çağırıp sonucu console.log ile yazdır.

Başlangıç kodu

index.ts
// gizli degiskeninin string olup olmadigini typeof ile kontrol et
// eger stringse toUpperCase metodunu cagir ve yazdir

const gizli: unknown = "merhaba";

Örnek çözüm

index.ts
const gizli: unknown = "merhaba";
if (typeof gizli === "string") {
  console.log(gizli.toUpperCase());
}

Beklenen çıktı

MERHABA

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir unknown değişkenle doğrudan işlem yapabilmek için ne gerekir?

  • Türün daraltılması veya onaylanması Doğru cevap
  • Değerin yeni bir değişkene kopyalanması
  • const ile yeniden bildirilmesi
  • Değişkenin global olarak bildirilmesi

Açıklama: unknown değerler doğrudan kullanılamaz; önce typeof/instanceof ile daraltılmalı veya as ile onaylanmalıdır.

2 typeof operatörü

Soru
const gizli: unknown = "selam";
if (____ gizli === "string") {
  console.log(gizli.toUpperCase());
}
Cevap
const gizli: unknown = "selam";
if (typeof gizli === "string") {
  console.log(gizli.toUpperCase());
}

Açıklama: İlkel türleri kontrol etmek için typeof operatörü kullanılır; instanceof sınıf örnekleri içindir.

3 unknown kavramları

Kavram Anlamı
unknown Daraltma gerektiren tür
typeof İlkel tür kontrolü
instanceof Sınıf örneği kontrolü
as Türü onaylama

Orta seviye bölümündeki tüm dersler