TypeScript Academy · Lektion

Mappade typer med +/-readonly och +/-?

Utforska mappade typer och modifierare (+/-readonly, +/-optional) för att skapa flexibla varianter av objektstrukturer.

Lektion 1 av 38 steg

Mappade typer med +/-readonly och +/-? är en gratis lektion i TypeScript Academy på CoddyKit. Detta är lektion 1 av 3. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för TypeScript Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i TypeScript Academy innehåller totalt 3 lektioner.

Introduktion

Mål: Lär dig mappade typer med modifierare för att systematiskt ändra objektegenskaper. De låter dig skapa skrivskyddade, valfria eller obligatoriska versioner av typer.

Grundläggande mappad typ

En mappad typ itererar över nycklar och återanvänder egenskapstyper. Detta är grunden för transformationer.

type Options = { a: string; b: number }

type Clone<T> = { [K in keyof T]: T[K] }

type Copy = Clone<Options>  // { a: string; b: number }

Lägg till readonly

Använd +readonly för att tvinga fram oföränderlighet. Alla egenskaper blir readonly.

type ReadonlyT<T> = { [K in keyof T]+readonly: T[K] }

interface User { id: number; name: string }

type Locked = ReadonlyT<User>  // all props readonly

Ta bort readonly

Använd -readonly för att ta bort oföränderligheten och återställa skrivbarheten.

type Mutable<T> = { [K in keyof T]-readonly: T[K] }

type Editable = Mutable<Locked>  // props writable again

Lägg till optional

? efter egenskapen markerar den som valfri. Användbart vid uppdateringar av konfigurationen.

type PartialT<T> = { [K in keyof T]?: T[K] }

interface Settings { dark: boolean; lang: string }

type Maybe = PartialT<Settings>  // props optional

Ta bort optional

Använd -? för att ta bort valfriheten och kräva att egenskaperna finns.

type RequiredT<T> = { [K in keyof T]-?: T[K] }

type Strict = RequiredT<Maybe>  // props required again

Kontroll av borttagning av readonly

Snabb kontroll: Vilken syntax för mappade typer tar bort readonly från egenskaper?

Sammanfattning

Sammanfattning: Mappade typer låter dig tillämpa transformationer på egenskaper: +/-readonly och +/-? för skrivbarhet och valfrihet. De utgör grunden för Partial, Required och Readonly.

Gratis att börja

Lär dig TypeScript med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
101
Lektioner
352

Vanliga frågor

Är lektionen ”Mappade typer med +/-readonly och +/-?” gratis?

Ja – hela texten till ”Mappade typer med +/-readonly och +/-?” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i TypeScript Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i TypeScript Academy innehåller totalt 3 lektioner.

Vad lär jag mig i ”Mappade typer med +/-readonly och +/-?”?

Utforska mappade typer och modifierare (+/-readonly, +/-optional) för att skapa flexibla varianter av objektstrukturer. Ni övar på TypeScript Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig TypeScript Academy?

Du behöver inga förkunskaper. Utbildningen i TypeScript Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 3.

Hur lång tid tar lektionen ”Mappade typer med +/-readonly och +/-?”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här TypeScript Academy-lektionen?

Ja. Varje TypeScript Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Mappade typer med +/-readonly och +/-?
  2. Ommappning av nycklar och mallsträngstyper
  3. Typning av strängmönster (ruttparametrar, händelsenamn)
← Tillbaka till TypeScript Academy