⊗tsSpGnPTL 36 of 37 menu

TypeScript'te Generics Kısıtlamalarında Tip Parametrelerinin Kullanımı

Ayrıca TypeScript'te, başka bir tip parametresiyle kısıtlanmış bir tip parametresi bildirme imkanı da vardır. Bu, özellikleri bir nesneden başka bir nesneye kopyalarken, fazladan özellik iletmememizi garanti altına almak gerektiğinde gereklidir.

Şu örneği ele alalım. Tekrar, bir değişkenin uzunluğunu belirleyen myFunc fonksiyonuna dönelim:

function myFunc <T> (data: T): T { console.log(data.length); // hata return data; }

Ancak şimdi bu fonksiyonun sadece length özelliği olan tiplerle çalışmasını istiyoruz. Bunun için ILength arayüzünü oluşturalım ve ona sayısal tipte bir length özelliği atalım:

interface ILength { length: number; }

Ardından fonksiyonumuzda, extends anahtar kelimesiyle ILength arayüzünden türeten generic bir tip tanımlayalım:

function myFunc <T extends ILength> (data: T): T { console.log(data.length); return data; }

İşte tam kodumuzun görünümü:

interface ILength { length: number; } function myFunc <T extends ILength> (data: T): T { console.log(data.length); return data; }

Fonksiyonumuzun çalışmasını test edelim ve bir stringin uzunluğunu bulalım:

console.log(myFunc('abcde'));

Kodun çalıştırılma sonucu:

5 'abcde'

Şimdi parametre olarak bir dizi iletelim:

console.log(myFunc(['a', 'b', 'c']));

Kodun çalıştırılma sonucu:

3 [ 'a', 'b', 'c' ]
Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet