Skip to content

TypeScript Yardımcı Tipleri açıklaması

TypeScript'in yerleşik yardımcı tipleri ve onlarla beraber gezen anahtar kelimeler, işe göre gruplanmış: bir nesneyi yeniden şekillendir, bir birliği filtrele, bir fonksiyonu tanımla, bir literal dizgiyi dönüştür ve değerlerden tip yakala. Her satır, tipi ve gerçekten yazacağınız bir alias ile gösterir.

Yardımcı tipler, tipler için jenerik fonksiyonlardır: bir ya da iki tip alır ve yeni bir tip döndürür; böylece her şekli elle yazmak zorunda kalmazsınız. Parladıkları yer türetilmiş tiplerdir: tek doğruluk kaynağı başka bir tip ya da bir değerse ve tiplerinizin onu otomatik izlemesini istiyorsanız. Altın kural, çoğaltmak yerine türetmektir: kaynağı değiştirdiğinizde türetilmiş tip onu izler.

Referans tablosu · 22 kayıt
22 of 22 rows
Nesne şekli
T; her özelliği isteğe bağlı yapılmış hali.type Update = Partial<User>
T; her özelliği zorunlu yapılmış hali.type Strict = Required<Opts>
T; her özelliği readonly yapılmış hali.type Frozen = Readonly<User>
T; yalnızca K'daki anahtarlar tutulmuş hali.type Preview = Pick<User, "id" | "name">
T; K'daki anahtarlar çıkarılmış hali.type SafeUser = Omit<User, "password">
Anahtarları K, değerleri V olan bir nesne.type Scores = Record<string, number>
Birlik filtreleme
X'e atanabilen üyeleri çıkarılmış U birliği.type NoNull = Exclude<T, null>
U'nun X'e atanabilen üyeleri.type OnlyStr = Extract<T, string>
T; null ve undefined çıkarılmış hali.type Def = NonNullable<T>
Fonksiyon tipleri
F fonksiyonunun parametre tiplerinden oluşan bir demet.type P = Parameters<typeof fn>
F fonksiyonunun döndürdüğü tip.type R = ReturnType<typeof fn>
F kurucusunun parametre tiplerinden oluşan bir demet.type C = ConstructorParameters<typeof Date>
F kurucusunun ürettiği örnek tipi.type D = InstanceType<typeof Date>
Bir Promise'in özyinelemeli olarak çözüldüğü tip.type Data = Awaited<Promise<User>>
Literal dizgi dönüşümleri
S dizgi literali büyük harfle.type A = Uppercase<"abc"> // "ABC"
S dizgi literali küçük harfle.type B = Lowercase<"ABC"> // "abc"
İlk karakteri büyük harf yapılmış S.type C = Capitalize<"abc"> // "Abc"
İlk karakteri küçük harf yapılmış S.type D = Uncapitalize<"Abc"> // "aBc"
İlgili anahtar kelimeler
T nesne tipinin özellik anahtarlarının birliği.type K = keyof User
Bir değerin tipi; yeniden yazmaya gerek olmadan.type Config = typeof defaults
Yeniden kullanmak için bir koşulun içinde tip yakalar.type El<T> = T extends Array<infer I> ? I : never
T'nin U'ya atanabilir olup olmamasına göre X ya da Y tipini seçer.type IsStr<T> = T extends string ? true : false