TypeScript Academy · Lektion

Typning av this-parametern; void, never

Typa den särskilda this-parametern, förstå lexikalt this med arrow-funktioner och lär dig när du ska returnera void respektive never.

Lektion 2 av 38 steg

Typning av this-parametern; void, never är en gratis lektion i TypeScript Academy på CoddyKit. Detta är lektion 2 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: Typa den särskilda this-parametern, förstå hur pilar fångar this lexikalt och välja mellan void (inget värde) och never (ingen retur).

Typning av this-parametern

Lägg till en inledande parameter med namnet this för att ange den förväntade mottagaren. Den är inte ett verkligt argument och gäller bara icke-pilfunktioner.

function setTitle(this: { title: string }, t: string): void {
  this.title = t;
}

const model = { title: "Old" };
setTitle.call(model, "New");
console.log(model.title);

Pilfunktioner och lexikalt this

Pilfunktioner fångar this från det omgivande omfånget; de kan inte deklarera en this-parameter.

const counter = {
  n: 0,
  tick: function () {
    setTimeout(() => {
      // Arrow keeps outer this (counter)
      this.n++;
      console.log(this.n);
    }, 0);
  },
};

counter.tick();

void-retur

void betyder att funktionen inte returnerar något meningsfullt värde. Anropare bör inte använda resultatet.

function logMsg(msg: string): void {
  console.log(msg);
}

const r = logMsg("hello"); // r is void (ignored)
// Returning a value here would error when annotated as void

never-retur

never anger att funktionen inte returnerar (den kastar ett fel eller kör en oändlig loop). Det är användbart för uttömmande kontroller och omöjliga kodvägar.

function fail(message: string): never {
  throw new Error(message);
}

function loopForever(): never {
  while (true) {}
}

// Calling either function never returns

Bästa praxis

Tips:

  • Använd this-parametern endast i icke-pilfunktioner som är beroende av en mottagare.
  • Föredra pil-callbackar för att undvika att förlora this.
  • Ange void för funktioner med sidoeffekter och använd never för kastning, loopar eller uttömmande skydd.

Kontroll av this-parametern

Snabbkontroll: Vilket påstående om parametern ”this” är SANT?

Sammanfattning

Sammanfattning: Typa mottagaren med en this-parameter i icke-pilfunktioner, förlita er på pilar för lexikalt this och använd void respektive never på lämpligt sätt.

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 ”Typning av this-parametern; void, never” gratis?

Ja – hela texten till ”Typning av this-parametern; void, never” 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 ”Typning av this-parametern; void, never”?

Typa den särskilda this-parametern, förstå lexikalt this med arrow-funktioner och lär dig när du ska returnera void respektive never. 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 2 av 3.

Hur lång tid tar lektionen ”Typning av this-parametern; void, never”?

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. Funktionsöverlagring och anropssignaturer
  2. Typning av this-parametern; void, never
  3. Assertionsfunktioner och användardefinierade typvakter
← Tillbaka till TypeScript Academy