Mapped-tyyppien muuntimet: readonly ja ?
Lisätkää tai poistakaa muuntimia +/--merkeillä mapped-tyypeissä
Mapped-tyyppien muuntimet: readonly ja ? on ilmainen TypeScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. 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ä 4 oppituntia.
Tervetuloa
Määritteiden lisääminen +-etuliitteellä
type Readonly<T> = { +readonly [K in keyof T]: T[K] }; // + is implicit
type Optional<T> = { [K in keyof T]+?: T[K] };readonly-määritteen poistaminen --etuliitteellä
type Mutable<T> = { -readonly [K in keyof T]: T[K] };
const mutableUser: Mutable<Readonly<User>> = { id: 1, name: 'Alice' };
mutableUser.id = 2; // OK now?-määritteen poistaminen --etuliitteellä
type Required<T> = { [K in keyof T]-?: T[K] };
// Now all optional properties become required- ja -?-etuliitteiden yhdistäminen
type Concrete<T> = { -readonly [K in keyof T]-?: T[K] };Partial ja Required ovat vastakohtia
// From TypeScript lib:
type Partial<T> = { [K in keyof T]?: T[K] }; // adds ?
type Required<T> = { [K in keyof T]-?: T[K] }; // removes ?Määritteiden säilyttäminen oletusarvoisesti
interface User { readonly id: number; name?: string; }
type Copy<T> = { [K in keyof T]: T[K] };
type C = Copy<User>; // readonly id preserved, name? preservedKäytännön esimerkki: Patch-tyyppi
type Patch<T> = { -readonly [K in keyof T]?: T[K] };DeepReadonly
type DeepReadonly<T> = {
readonly [K in keyof T]: T[K] extends object ? DeepReadonly<T[K]> : T[K]
};DeepPartial
type DeepPartial<T> = {
[K in keyof T]?: T[K] extends object ? DeepPartial<T[K]> : T[K]
};Määritteiden yhdistelmien taulukko
Pikatarkistus
Kertaus
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 ”Mapped-tyyppien muuntimet: readonly ja ?” ilmainen?
Kyllä – oppitunnin ”Mapped-tyyppien muuntimet: readonly ja ?” 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ä 4 oppituntia.
Mitä opin oppitunnilla ”Mapped-tyyppien muuntimet: readonly ja ?”?
Lisätkää tai poistakaa muuntimia +/--merkeillä mapped-tyypeissä 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/4.
Kuinka kauan ”Mapped-tyyppien muuntimet: readonly ja ?”-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
- Mapped-tyypit: oliotyyppien muuntaminen
- Mapped-tyyppien muuntimet: readonly ja ?
- Template literal -tyypit: merkkijonomallit
- Avainten uudelleennimeäminen as-syntaksilla mapped-tyypeissä