⊗tsSpGnTV 30 of 37 menu

Tipiese veranderlikes in TypeScript

Vir 'n beter begrip van die konsep van generika laat ons ons eerste funksie skep - identiteitsfunksie. So 'n funksie gee presies terug wat daaraan oorgedra is - met dieselfde tipe.

Laat ons eers die variante van ons funksie afsonderlik skryf.

Kom ons skryf 'n funksie wat 'n getal as parameter aanvaar en 'n getal teruggee:

function func(data: number): number { return data; }

Nou skryf ons 'n funksie wat 'n string as parameter aanvaar en 'n string teruggee:

function func(data: string): string { return data; }

Gestel ons wil nou een funksie hê wat dit alles doen. Met ander woorde, ons wil veralgemening uitvoer.

Hiervoor gebruik ons 'n tipiese veranderlike, wat die datatipe daarin stoor. So 'n veranderlike word verklaar in hoekies voor die hakies met die funksieparameters. Kom ons verklaar sodanige veranderlike, met die naam T (enige naam is moontlik):

function func <T>(hier parameters) { return data; }

Daarna sal ons die veranderlike T hê, wat ons kan gebruik om die tipe van die parameter daarin te plaas, en dan dit as die terugkeertipe aan te dui.

Kom ons dui ons parameter se tipe aan as ons veranderlike:

function func <T>(data: T) { return data; }

Dit beteken die parameter kan in enige tipe oorgedra word, en hierdie tipe sal in ons veranderlike T gestoor word.

Nou gebruik ons die waarde van veranderlike T om die funksie se resultaat aan te dui:

function func <T>(data: T): T { return data; }

Nou sal die tipe van die funksieresultaat afkomstig wees van die tipe van die parameter. Kom ons toets dit.

Roep die funksie met 'n getal:

console.log( func(3) ); // sal 3 uitdruk

Roep die funksie met 'n string:

console.log( func('x') ); // sal 'x' uitdruk

Maak 'n funksie wat as parameter of twee getalle, of twee stringe aanvaar. Die funksie moet die som van die parameters as resultaat teruggee.

Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp