Variadic tuples
- TypeScript kursu
- İleri seviye
- Ders 1/57
- 4 dk
Değişken uzunluklu tuple türlerini öğrenirsin.
Variadic tuple nedir?
Variadic tuple, son elemanı ... spread operatörüyle genişletilebilen değişken uzunluklu tuple'dır. [A, ...B[]] biçiminde yazılır. Bu sayede baştaki elemanlar sabit, geri kalanlar ise esnek sayıda olur. Özellikle fonksiyon parametrelerinin tür güvenli şekilde genişletilmesinde kullanılır.
type Baslikli<T> = [string, ...T[]];
const x: Baslikli<number> = ["baslik", 1, 2, 3];Tuple spread ile birleştirme
İki tuple'ı birleştirmek için [...A, ...B] biçimi kullanılır. Burada A ve B tuple türleridir. Bu, dizi birleştirmeden farklı olarak elemanların türlerini korur. Örneğin [number, ...string[]] ile [boolean] birleşince [number, ...string[], boolean] elde edilir.
type Birlestir<A extends unknown[], B extends unknown[]> = [...A, ...B];Uygulama Başlıklı tuple yaz
Baslikli adında bir generic tür tanımla: <T> = [string, ...T[]]. y değişkeni Baslikli<number> türünde ve değeri ["baslik", 1, 2] olsun. y[0] ile ilk elemanı console.log ile yazdır.
Başlangıç kodu
// Baslikli adinda generic tuple turunu tanimla
// başta bir string, ardından istenen sayıda T elemanı olsun
// y degiskenini number elemanlariyla tanimla
// y[0] yazdirÖrnek çözüm
type Baslikli<T> = [string, ...T[]];
const y: Baslikli<number> = ["baslik", 1, 2];
console.log(y[0]);Beklenen çıktı
baslik
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Variadic tuple'ın hangi kısmı spread operatörü alır?
- Her eleman
- Spread operatörü kullanılmaz
- İlk eleman
- Son eleman Doğru cevap
Açıklama: Variadic tuple'da spread operatörü son elemanda kullanılır; bu sayede baştaki elemanlar sabit, sonraki elemanlar esnek sayıda olur.
2 Spread operatörü
type Baslikli<T> = [string, ____ T[]];
type Baslikli<T> = [string, ... T[]];
Açıklama: Variadic tuple'da spread operatörü ... ile yazılır; bu, son elemanın esnek sayıda olmasını sağlar.
3 Variadic tuple kavramları
| Kavram | Anlamı |
|---|---|
... |
Spread operatörü |
[A, ...B[]] |
Variadic tuple biçimi |
son eleman |
Spread burada |
[...A, ...B] |
Tuple birleştirme |