Hyödynnä TypeScriptin aputyyppejä ja voit hyötyä ilmeisemmästä koodista, joka on myös kestävämpi.

TypeScript on JavaScriptin superjoukko, jonka avulla voit lisätä staattista kirjoittamista koodipohjaasi. Voimakkaalla tyyppijärjestelmällään TypeScript tarjoaa paremman koodin luettavuuden ja mahdollisuuden havaita virheet käännösajan aikana.

Yksi TypeScriptin hyödyllisimmistä puolista on sen sisäänrakennetut apuohjelmatyypit, jotka voivat yksinkertaistaa koodaustyötäsi ja säästää arvokasta kehitysaikaa. Tutustu näihin pakollisiin TypeScript-aputyyppeihin, joiden avulla voit kirjoittaa tyyppiturvallista koodia helposti.

TypeScriptin Osittainen apuohjelman tyyppi antaa sinun tehdä mistä tahansa objektin ominaisuuksista valinnaisia. Sen avulla voit luoda objekteja, joilla on tiettyjä ominaisuuksia, jotka saattavat puuttua tai olla määrittelemättömiä. Otetaan esimerkiksi:

käyttöliittymä Käyttäjä { 
nimi: merkkijono;
ikä: määrä;
sähköposti: merkkijono;
}

Käyttämällä Osittainen apuohjelma, voit luoda uuden tyypin, jossa kaikki käyttöliittymän ominaisuudet on asetettu valinnaisiksi:

instagram viewer
tyyppi OptionalUser = Osittainen

Nyt voit luoda OptionalUser-tyypin esiintymän, jossa on määritetty vain joitain ominaisuuksia:

konst user: OptionalUser = { nimi: "John" };

Saatat kohdata tilanteita, joissa sinun on luotava objekti tietyillä valinnaisilla ominaisuuksilla. Tästä voi olla hyötyä varsinkin muotoja rakennettaessa joissa on useita kenttiä, koska kaikkia niitä ei välttämättä vaadita, ja tällaisissa tapauksissa osittainen hyödyllisyys voi olla elintärkeää.

TypeScriptin Pick-apuohjelman tyyppi voi auttaa sinua luomaan uuden tyypin valitsemalla vain osan ominaisuuksista olemassa olevasta tyypistä. Se on kätevä, kun haluat rajata suuremman kohteen vain muutamaan vaadittavaan kiinteistöön tai jos haluat pakottaa tarvitsemasi ominaisuudet tiukkaan kirjoittamisen.

käyttöliittymä Käyttäjä { 
sijainti: merkkijono;
ikä: määrä;
sähköposti: merkkijono;
}

tyyppi PersonWithoutEmail = Valitse'sijainti' | 'ikä'>;

konst henkilö: HenkilöWithoutEmail = {
sijainti: "USA",
ikä: 30
};

Tässä esimerkissä "Käyttäjä"-niminen käyttöliittymä määrittää kolme ominaisuutta: sähköposti, ikä ja sijainti.

Käyttämällä Valitse apuohjelmatyyppi, voit poimia "sijainti"- ja "ikä"-ominaisuudet valikoivasti käyttöliittymästä, jolloin luodaan uusi tyyppi nimeltä "PersonWithoutEmail".

Voit sitten luoda uuden "PersonWithoutEmail"-tyypin esiintymän ja määrittää arvot vain "sijainti"- ja "ikä"-ominaisuuksille. Koska "email"-ominaisuus on jätetty pois tästä tyypistä, et voi määrittää sitä objektille.

Pick-apuohjelmatyypin avulla voit luoda uuden tyypin, joka sisältää vain haluamasi ominaisuudet. Tämä voi auttaa tekemään koodistasi luettavamman ja helpompia käsitellä.

Vain luku -tyyppi tarkoittaa, että objektin attribuutit ovat muuttumattomia sen luomisen jälkeen. Tämä tyyppi takaa objektin tietojen johdonmukaisuuden pitkällä aikavälillä, mikä johtaa sujuvampaan ja turvallisempaan koodin käsittelyyn.

käyttöliittymä Käyttäjä {
vain luku -nimi: merkkijono;
vain luku -ikä: määrä;
vain luku -sähköposti: merkkijono;
}

Käyttämällä Vain luku -apuohjelman tyyppi, voit luoda uuden tyypin, jossa kaikki käyttöliittymän ominaisuudet on määritetty vain luku -tyyppisiksi:

tyyppi ReadonlyUser = Vain luku

Voit määrittää ominaisuusarvot, kun luot ReadonlyUser-esiintymän::

konst käyttäjä: ReadonlyUser = { 
nimi: "John",
ikä: 30,
sähköposti: "[email protected]"
};

Kun merkitset objektin ominaisuudet vain luku -arvoisiksi, näiden ominaisuuksien arvojen muokkaaminen on mahdotonta:

käyttäjä.nimi = "Jane";
// Virhe: Nimeä ei voi määrittää, koska se on vain luku -ominaisuus.

Readonly-tyyppi on erityisen tärkeä tilanteissa, joissa haluat varmistaa, että tietty objekti ei muutu, vaikka siihen viitataan. Jos sinulla on esimerkiksi objekti, joka sisältää tärkeitä kokoonpanoasetuksia, sinun kannattaa varmistaa, että se pysyy muuttumattomana.

Tämä tyyppi varmistaa, että kaikki Objektin olennaiset ominaisuudet ovat läsnä, kun taas Osittainen tyyppi tarjoaa enemmän joustavuutta antamalla sinun määrittää ominaisuuksien osajoukon ja jättää muut valinnainen. Tämä voi osoittautua hyödylliseksi tilanteissa, joissa jotkin ominaisuudet eivät välttämättä ole tarpeellisia tai niitä voidaan muuttaa.

käyttöliittymä Käyttäjä {
nimi: merkkijono;
sijainti: määrä;
osoite: merkkijono;
}

Hyödyntämällä Vaadittu apuohjelmatyyppi, on mahdollista luoda uusi tyyppi, joka yhdistää kaikki käyttöliittymän attribuutit edellyttäen, että jokainen näistä ominaisuuksista on läsnä. RequiredUser-ilmentymän luominen on mahdollista vasta, kun kaikki sen ominaisuudet on asetettu oikein.

konst käyttäjä: RequiredUser = { 
nimi: "John Doe",
sijainti: "USA",
osoite: "Kansas 9745-0622"
};

Vaaditun apuohjelman tyypin käyttäminen varmistaa, että objektissa on kaikki vaaditut ominaisuudet.

Ohita apuohjelmatyypin avulla voit luoda uuden tyypin sulkemalla pois tiettyjä ominaisuuksia olemassa olevasta tyypistä.

käyttöliittymä Henkilö {
sijainti: merkkijono;
ikä: määrä;
sähköposti: merkkijono;
}

tyyppi PersonWithoutEmail = Ohita'sähköposti'>;
konst henkilö: HenkilöWithoutEmail = { sijainti: "USA"; ikä: 30 };

Henkilökäyttöliittymässä on kolme ominaisuutta: ikä, sijainti ja sähköposti. PersonWithoutEmail-tyyppi käyttää Omit-apuohjelmaa sisällyttääkseen kaikki Person-objektin ominaisuudet, paitsi sähköpostin. Voit sitten luoda tämän uuden tyypin esiintymän määrittämättä arvoa sähköpostin ominaisuudelle.

Muista, että Omit-apuohjelmatyypillä on merkittäviä yhtäläisyyksiä Pick-apuohjelman kanssa, koska sen avulla voit suunnitella uuden tyypin käyttämällä vain määrittämiäsi ominaisuuksia.

Voit käyttää Record-apuohjelman tyyppiä määrittääksesi objektityypin, jonka avaimilla ja arvoilla on tietty tyyppi. Sen määritelmä on:

tyyppi Ennätysulottuu keyof minkä tahansa, T> = { [P sisään K]: T;};

Tämä yhdistää tyypin T kunkin avaimen arvoon, kun taas K on minkä tahansa tyyppisten avainten liitto. Tuloksena olevan objektin ominaisuustyypiksi P on asetettu T.

Harkitse skenaariota objektityypistä, jossa on merkkijonoavaimet ja numeroarvot. Siinä tapauksessa voit soveltaa Tallenna apuohjelman tyyppi kuten:

tyyppi MyRecord = Record<merkkijono, määrä>;

konst myObject: MyRecord = {
"foo": 1,
"baari": 2,
"baz": 3,
}

Tässä esimerkissä MyRecord määritetään objektityypiksi merkkijonoavainten ja numeroarvojen kanssa. MyObject-objekti sisältää tämän tyyppisen esimerkin, jossa avaimet "foo", "bar" ja "baz" on määritetty niitä vastaaville arvoille.

Tässä artikkelissa paljastettiin TypeScript-apuohjelmatyyppien valtava voima – ne voivat olla arvokas voimavara, kun on tarkoitus virtaviivaistaa koodia ja tehdä kehityksestä nopeampaa ja tehokkaampaa. Nämä apuohjelmatyypit ja TypeScript yleensä voivat tehdä ihmeitä varmistaakseen, että koodisi on aina virheetön ja noudattaa tiettyjä rakenteita.