Genel Kısıtlamalar: Tür Parametrelerini Daraltma
Genel türlerde yapı gereksinimlerini zorunlu kılmak için extends kullanın
Genel Kısıtlamalar: Tür Parametrelerini Daraltma, CoddyKit'te ücretsiz bir TypeScript Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, TypeScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. TypeScript Academy kursu toplamda 4 dersten oluşur.
Hoş Geldiniz
Kısıtlamaların Özeti
function len<T extends { length: number }>(val: T): number {
return val.length;
}Belirli Yöntemlerle Sınırlama
interface Stringable { toString(): string; }
function stringify<T extends Stringable>(val: T): string {
return val.toString();
}Kısıtlamadan Tür Çıkarımı
function pluck<T, K extends keyof T>(items: T[], key: K): T[K][] {
return items.map(item => item[key]);
}
const names = pluck(users, 'name'); // string[]Üst Düzey Tür Kısıtlamaları (Benzetimli)
İlkel Türlerle Sınırlama
type Primitive = string | number | boolean | bigint | symbol | null | undefined;
function isPrimitive<T extends Primitive>(val: T): true { return true; }Özyinelemeli Kısıtlamalar
interface Comparable<T> { compareTo(other: T): number; }
function sort<T extends Comparable<T>>(items: T[]): T[] {
return [...items].sort((a, b) => a.compareTo(b));
}Varsayılan Değerli Kısıtlama
function process<T extends object = Record<string, unknown>>(data: T): void {
console.log(Object.keys(data));
}T extends Record<string, unknown>
function getValue<T extends Record<string, unknown>>(obj: T, key: string): unknown {
return obj[key];
}Dönüş Türlerinde Kısıtlama Çıkarımı
function firstKey<T extends object>(obj: T): keyof T {
return Object.keys(obj)[0] as keyof T;
}NoInfer Yardımcı Programı (TS 5.4)
function createState<T>(initial: T, fallback: NoInfer<T>): T {
return initial ?? fallback;
}Hızlı Kontrol
Özet
Sıkça Sorulan Sorular
“Genel Kısıtlamalar: Tür Parametrelerini Daraltma” dersi ücretsiz mi?
Evet — “Genel Kısıtlamalar: Tür Parametrelerini Daraltma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve TypeScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. TypeScript Academy kursu toplamda 4 dersten oluşur.
“Genel Kısıtlamalar: Tür Parametrelerini Daraltma” dersinde ne öğreneceğim?
Genel türlerde yapı gereksinimlerini zorunlu kılmak için extends kullanın TypeScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
TypeScript Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te TypeScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“Genel Kısıtlamalar: Tür Parametrelerini Daraltma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu TypeScript Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her TypeScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- keyof ve Dizine Göre Erişim Türleri
- Genel Kısıtlamalar: Tür Parametrelerini Daraltma
- Koşullu Türler: T extends U ? X : Y
- Dağıtıcı Koşullu Türler