Generic Diziler
Coddy'nin JavaScript Journey'sinin TypeScript'e Giriş bölümünün bir parçası — ders 60 / 73.
Diziler ve generic'ler TypeScript'te harika bir şekilde birlikte çalışır. Daha önce türü belirtilmiş diziler hakkında bilgi edindiğinizde, bir dizinin yalnızca belirli bir türdeki öğeleri içerebileceğini belirtmek için T[] söz dizimini kullanmıştınız. Generic'ler size aynı kavramı ifade etmenin başka bir yolunu sunar.
TypeScript, yazılan diziler (typed arrays) için Array<T> formatını kullanan alternatif bir sözdizimi sağlar:
// Bu iki bildirim eşdeğerdir:
let numbers1: number[] = [1, 2, 3];
let numbers2: Array<number> = [1, 2, 3];Array<T> söz dizimi, diziler üzerinde işlem yapan jenerik fonksiyonlarla çalışırken özellikle yararlıdır. Özellikle tür güvenliğini korurken herhangi bir türdeki dizilerle çalışabilen fonksiyonlar oluştururken, kodunuzun jenerik doğasını daha belirgin ve okunabilir hale getirir.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Görev
KolayHerhangi bir türde bir dizi alan ve ilk öğeyi veya dizi boşsa undefined değerini döndüren getFirstElement adında genel (generic) bir fonksiyon oluşturun.
Fonksiyon şunları yapmalıdır:
- Genel bir tür parametresi olan
Tkullanmalıdır Array<T>türündearradında bir parametre kabul etmelidirTtüründe ilk öğeyi veyaundefineddöndürmelidirT | undefinedşeklinde açık bir dönüş türü belirtecine sahip olmalıdır
Array<T> sözdizimini kullanarak aşağıdaki dizileri oluşturun:
["apple", "banana", "cherry"]içerenArray<string>türündestringArray[10, 20, 30, 40]içerenArray<number>türündenumberArray[true, false, true]içerenArray<boolean>türündebooleanArray- Boş olan
Array<string>türündeemptyStringArray
Fonksiyonunuzu test edin ve aşağıdaki çıktıları yazdırın:
stringArrayilegetFirstElementçağırma sonucunu yazdırınnumberArrayilegetFirstElementçağırma sonucunu yazdırınbooleanArrayilegetFirstElementçağırma sonucunu yazdırınemptyStringArrayilegetFirstElementçağırma sonucunu yazdırın["single"]içeren yeni birArray<string>ilegetFirstElementçağırma sonucunu yazdırın
Kopya kağıdı
TypeScript, tipli diziler için iki eşdeğer söz dizimi sağlar:
// Bu iki bildirim eşdeğerdir:
let numbers1: number[] = [1, 2, 3];
let numbers2: Array<number> = [1, 2, 3];Array<T> söz dizimi, diziler üzerinde çalışan jenerik fonksiyonlarla çalışırken özellikle yararlıdır; tip güvenliğini korurken kodunuzun jenerik doğasını daha açık ve okunabilir hale getirir.
Kendin dene
// YAPILACAK: Kodunuzu buraya yazın
// getFirstElement genel (generic) fonksiyonunu oluşturun
// Array<T> sözdizimini kullanarak gerekli dizileri oluşturun
// Fonksiyonu test edin ve sonuçları yazdırınBu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
TypeScript'e Giriş bölümündeki tüm dersler
1TS ile Başlarken
TypeScript Nedir?Neden TypeScript Kullanılır?İlk TypeScript KodunuzDerleme Süreci ve HatalarÖzet: TS'ye Giriş4Fonksiyonlarla Çalışmak
Parametre ve Dönüş Değerlerini TiplendirmeArrow Fonksiyonlarını Tiplendirme'void' Dönüş Tipi'?' ile Opsiyonel ParametrelerVarsayılan Parametre DeğerleriRest Parametrelerini TiplendirmeFonksiyon Tiplerini TanımlamaÖzet: Tiplendirilmiş Fonksiyonlar Oluşturma2Temel Tipler
Temel Tipler: str, num, boolean'any' Tipi: Kaçış Yolu'unknown' Tipi'null' ve 'undef' ile ÇalışmakTip Çıkarımı İş BaşındaAçık Tip BelirlemeleriÖzet: Temel Tipler Pratiği5Tipler: Takma Adlar, Unionlar ve Kesişimler
İlkel Tipler için Tip Takma AdlarıUnion Tipler ('|')Union Tipler ile ÇalışmakLiteral TiplerKesişim Tipleri ('&')Tip Takma Adlarını BirleştirmeÖzet: Gelişmiş Tip Kombinasyonları3Veri Yapısı: Diziler ve Tuple
Tipli DizilerDiziler için 'readonly' BelirleyicisiTuple Nedir?Tuple Tanımlama ve ErişmeTuple DestructuringReadonly Tuple'larÇok Boyutlu Tipli DizilerDizilerle Spread OperatörüÖzet: Diziler ve Tuple'lar6Nesneleri ve Interface'leri Tiplendirme
Satır İçi Nesne Tipi BelirtimleriNesneler için Type Alias KullanımıInterface'lere GirişInterface'ler ve Type Alias'ların KarşılaştırılmasıOpsiyonel ve Readonly ÖzelliklerInterface ve Tipleri GenişletmeInterface'lere Metot EklemeÖzet: Nesne Yapılarını Tanımlama9Generic Yapılar: İlk Bakış
Generic Yapıların Çözdüğü SorunGeneric Identity Fonksiyonu OluşturmaGeneric Fonksiyon KullanımıGeneric DizilerGeneric Interface'lerÖzet: Generic Fonksiyon Pratiği