Kuvatut tyypit
Opetelkaa muuntamaan olemassa olevia tyyppejä uusiksi kuvattujen tyyppien avulla, mikä lisää joustavuutta dynaamisten tietorakenteiden käsittelyssä.
Kuvatut tyypit on ilmainen TypeScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/3. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu TypeScript Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. TypeScript Academy-kurssilla on yhteensä 3 oppituntia.
Johdanto mapped-tyyppeihin
Mapped-tyyppien avulla voitte muuntaa olemassa olevia tyyppejä uusiksi tyypeiksi soveltamalla toimintoja tyypin jokaiseen ominaisuuteen.
Ne ovat tehokas tapa luoda joustavia ja uudelleenkäytettäviä tyyppirakenteita TypeScriptissä.

Mitä mapped-tyypit ovat?
Mapped-tyypeissä käytetään esimerkiksi syntaksia { [P in keyof T]: T[P] } tyypin T ominaisuuksien läpikäymiseen.
Mapped-tyyppien perusesimerkki
Tässä on yksinkertainen esimerkki siitä, miten mapped-tyypin avulla luodaan tyypistä vain luku -muotoinen versio:
type User = {
name: string;
age: number;
};
type ReadonlyUser = {
readonly [P in keyof User]: User[P];
};Sisäänrakennettujen mapped-tyyppien käyttäminen
TypeScript tarjoaa useita sisäänrakennettuja mapped-tyyppejä, kuten:
Readonly<T>: Tekee kaikista tyypinTominaisuuksista vain luettavia.Partial<T>: Tekee kaikista tyypinTominaisuuksista valinnaisia.Required<T>: Tekee kaikista tyypinTominaisuuksista pakollisia.
type User = {
name: string;
age: number;
};
// Example of Partial
const user: Partial<User> = {
name: 'John',
};Unionien mapittaminen
Mapped-tyyppejä voidaan käyttää myös unionityyppien kanssa uusien yhdistettyjen tyyppien luomiseen:
type Status = 'active' | 'inactive';
type StatusFlags = {
[K in Status]: boolean;
};
const flags: StatusFlags = {
active: true,
inactive: false,
};Ehdolliset mapped-tyypit
Voitte käyttää ehdollisia tyyppejä yhdessä mapped-tyyppien kanssa monimutkaisempien tyyppimuunnosten luomiseen.
type User = {
name: string;
age?: number;
};
type NonOptional<T> = {
[K in keyof T]-?: T[K];
};
type RequiredUser = NonOptional<User>;Edistynyt esimerkki: ominaisuuksien poissulkeminen
Seuraavassa näette, miten voitte luoda mapped-tyypin tiettyjen ominaisuuksien poissulkemista varten:
type User = {
id: number;
name: string;
password: string;
};
type PublicUser = {
[K in keyof User as Exclude<K, 'password'>]: User[K];
};Harjoitustehtävä
Luokaa mapped-tyyppi, joka lisää readonly-määritteen Product-tyypin kaikkiin ominaisuuksiin. Testatkaa sitä määrittämällä uuden tyypin muuttuja.
Mapped-tyyppien kertaus
Onnittelut!
Olette oppineet käyttämään mapped-tyyppejä olemassa olevien tyyppien muuntamiseen dynaamisesti uusiksi tyypeiksi. Harjoitelkaa näitä tekniikoita, jotta TypeScript-koodinne olisi entistä tehokkaampaa!

Opi TypeScript tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 101
- Oppitunnit
- 352
Usein kysytyt kysymykset
Onko oppitunti ”Kuvatut tyypit” ilmainen?
Kyllä – oppitunnin ”Kuvatut tyypit” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko TypeScript Academy-kurssin, päivitä CoddyKit PROhon. TypeScript Academy-kurssilla on yhteensä 3 oppituntia.
Mitä opin oppitunnilla ”Kuvatut tyypit”?
Opetelkaa muuntamaan olemassa olevia tyyppejä uusiksi kuvattujen tyyppien avulla, mikä lisää joustavuutta dynaamisten tietorakenteiden käsittelyssä. Harjoittelet TypeScript Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni TypeScript Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin TypeScript Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/3.
Kuinka kauan ”Kuvatut tyypit”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä TypeScript Academy-oppitunnilla?
Kyllä. Jokainen TypeScript Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Keyof- ja hakutyypit
- Kuvatut tyypit
- Leikkaus- ja unionityypit