⊗tsSpGnTV 30 of 37 menu

Tyypilliset muuttujat TypeScriptissä

Ymmärtääksesi geneeristen tyyppien käsitettä paremmin luodaan ensimmäinen funktiomme - identiteettifunktio. Tällainen funktio palauttaa täsmälleen sen, mitä sille annettiin - samalla tyypillä.

Aluksi kirjoitetaan funktiomme versiot erikseen.

Kirjoitetaan funktio, joka ottaa parametrina luvun ja palauttaa luvun:

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

Nyt kirjoitetaan funktio, joka ottaa parametrina merkkijonon ja palauttaa merkkijonon:

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

Oletetaan nyt, että haluamme tehdä tämän kaiken yhdellä funktiolla. Eli haluamme suorittaa yleistämisen.

Tätä varten käytämme tyypillistä muuttujaa, joka säilyttää datatyypin. Tällainen muuttuja esitellään kulmasulkujen sisällä ennen pyöreitä sulkuja funktion parametrien kanssa. Esitellään tällainen muuttuja antamalla sille nimi T (mikä tahansa nimi kelpaa):

function func <T>(tässä parametrit) { return data; }

Tämän jälkeen meillä on muuttuja T, jota voidaan käyttää tallentamaan parametrin tyyppi, ja sitten määrittämään se paluuarvon tyypiksi.

Määritetään parametrillemme tyyppi muuttujamme mukaisesti:

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

Saadaan aikaiseksi, että parametri voidaan antaa millä tahansa tyypillä, ja tämä tyyppi tallennetaan muuttujaamme T.

Käytetään nyt muuttujan T arvoa funktion paluuarvon määrittelyssä:

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

Nyt saadaan aikaiseksi, että funktion paluuarvon tyyppi saadaan parametrin tyypistä. Testataan.

Kutsutaan funktiota numerolla:

console.log( func(3) ); // tulostaa 3

Kutsutaan funktiota merkkijonolla:

console.log( func('x') ); // tulostaa 'x'

Tee funktio, joka ottaa parametrina joko kaksi numeroa tai kaksi merkkijonoa. Funktion tulee palauttaa parametrien summa.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää