Temel inference
- TypeScript kursu
- Başlangıç
- Ders 34/89
- 4 dk
Tür çıkarımının nasıl çalıştığını öğrenirsin.
Temel inference
TypeScript, bir değişkene atanan değerden türü otomatik olarak çıkarır. Buna tür çıkarımı denir. Her değişkende açık tür yazmak zorunda değilsin; TypeScript atanan değerden türü belirler.
let yas = 25; // number çıkarımı
let isim = "Ali"; // string çıkarımı
let aktif = true; // boolean çıkarımıÇıkarım, daha az yazıyla tür güvenliği sağlar.
Çıkarım ve tür uyumsuzluğu
Çıkarılan tür, atanan değerin türüne bağlıdır. Dize atarsan string, sayı atarsan number, boolean atarsan boolean çıkar. Çıkarılan tür, sonradan farklı türde değer atamayı engeller.
let x = 5;
x = "metin"; // hata: number bekleniyorduÇıkarım, ilk atamadaki türe göre yapılır ve sonradan değişmez.
Uygulama Çıkarımla değişken tanımla
Tür belirtmeden üç değişken tanımla: mesaj değişkenine "merhaba" değerini, adet değişkenine 10 değerini, aktif değişkenine true değerini ata. Üç değeri de sırayla console.log ile yazdır.
Başlangıç kodu
// mesaj değişkenine bir dize ata (tür yazma)
// adet değişkenine bir sayı ata (tür yazma)
// aktif değişkenine true ata (tür yazma)
// mesaj, adet, aktif sırayla yazdırÖrnek çözüm
let mesaj = "merhaba";
let adet = 10;
let aktif = true;
console.log(mesaj);
console.log(adet);
console.log(aktif);Beklenen çıktı
merhaba 10 true
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 <code>let isim = "Ali";</code> ifadesinde <code>isim</code>'in çıkarılan türü nedir?
- any
- string Doğru cevap
- number
- "Ali" (literal)
Açıklama: <code>let</code> ile dize atandığında TypeScript geniş <code>string</code> türünü çıkarır; literal tür <code>"Ali"</code> yalnızca <code>const</code> ile çıkılır.
2 Çıkarılan türe uygun tür yaz
let x = "merhaba";
let y: ____ = x;
let x = "merhaba";
let y: string = x;
Açıklama: <code>x</code>'e dize atandığından çıkarılan türü <code>string</code>'dir; <code>y</code> de <code>x</code>'i alacağı için <code>string</code> türünde olmalıdır.
3 Inference kavramları
| Kavram | Anlamı |
|---|---|
let x = 5 |
number çıkarımı |
let x = "a" |
string çıkarımı |
let x = true |
boolean çıkarımı |
Type inference |
Türü otomatik belirleme |