Geri

TypeScript Union Type (Birleşik Türler)

TypeScript'te union type (birleşik tür), bir değişkenin birden fazla türden birine sahip olabileceğini ifade eder. Bu, özellikle kullanıcıdan gelen veri gibi esnek tiplerin kontrolü için oldukça faydalıdır.

Union Type Nasıl Tanımlanır?

let value: string | number;
value = "Hello";
value = 42;

Yukarıdaki örnekte `value` değişkeni hem `string` hem de `number` değerleri alabilir. TypeScript, her iki türü de tanıyarak kodun daha esnek olmasına izin verir.

Gerçek Hayattan Bir Senaryo

function printId(id: string | number) {
  console.log("ID:", id);
}

Bir API’den gelen kullanıcı ID’si bazen sayı bazen string olarak dönebilir. Union type sayesinde bu olasılıkları tek bir tanımda karşılayabiliriz.

Type Guard Kullanımı

function handleInput(input: string | number) {
  if (typeof input === "string") {
    console.log("Text:", input.toUpperCase());
  } else {
    console.log("Number:", input.toFixed(2));
  }
}

Union type kullanırken, her tür için farklı işlemler yapmak gerekebilir. `typeof` operatörü ile hangi türle çalıştığımızı belirleyip güvenli şekilde işlem yapabiliriz. Bu tekniğe 'type guard' denir.

Form ve Kullanıcı Girdilerinde Kullanımı

let input: string | null = null;

Formlarda bir input değeri ilk başta `null`, daha sonra `string` olabilir. Bu gibi durumlarda union type ile hem boş hem dolu değerler için uygun tanım yapılabilir.

Neden Union Type Kullanmalıyız?

Union type, özellikle dinamik verilerle çalışan uygulamalarda büyük kolaylık sağlar. Farklı türleri tek bir değişkende toparlayarak hem esnek hem de tip güvenli bir yapı sunar. Bu da TypeScript'in gücünü gerçek projelerde hissetmenizi sağlar.

Geri