CodeBlanks Logo Icon CodeBlanks

Variadic tuples

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

index.ts
// 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

index.ts
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ü

Soru
type Baslikli<T> = [string, ____ T[]];
Cevap
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

İleri seviye bölümündeki tüm dersler