⊗tsSpGnIms 35 of 37 menu

Kufizimet e Gjeneralizimeve në TypeScript

Në një nga mësimet e mëparshme krijuam një funksion të tipit të përgjithshëm, i cili duhej të nxirrte gjatësinë e parametrit të kaluar në të. Megjithatë, gjatë përpilimit na dha një gabim, pasi jo të gjitha llojet mund të kenë gjatësi:

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

Në atë rast e rregulluam situatën, duke ndryshuar llojin e përgjithshëm në llojin e vargut të përgjithshëm. Por në TypeScript ekziston mundësia për të krijuar kufizime të gjeneralizimeve. Për ta bërë këtë, në kllapat këndore, pas ndryshores T shkruajmë fjalën kyçe extends. Pas saj në kllapa kaçurrel shkruajmë një ndryshore të re str të llojit varg. Kodi i mbetur i funksionit do të mbetet pa ndryshime:

function myFunc <T extends {str: string}> (data: T): void { console.log(data.str.length); }

Del pra se lloji i përgjithshëm trashëgon llojin e ndryshores str, të specifikuar në kllapat kaçurrel. Tani le të kontrollojmë funksionimin e funksionit tonë dhe të krijojmë një ndryshore myStr, që i referohet llojit str, dhe t'i caktojmë asaj një vlerë në kllapa kaçurrel:

let myStr: {str: string} = {str: 'abcde'};

Le të thërrasim funksionin myFunc, duke u kujdesur që përsëri të tregojmë llojin e tij dhe të kalojmë ndryshoren myStr si parametër:

myFunc <{str: string}> (myStr);

Bazuar në shembullin e shqyrtuar në mësim, caktoni funksionin për gjetjen e gjatësisë së një grupi numerik.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo