JavaScript Academy · leksjon

Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt

Opprett async-funksjoner, vent på resultater med await, fang feil og sammenlign sekvensielle og parallelle mønstre.

Leksjon 1 av 38 trinn

Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt er en gratis leksjon i JavaScript Academy på CoddyKit. Dette er leksjon 1 av 3. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i JavaScript Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i JavaScript Academy inneholder totalt 3 leksjoner.

Introduksjon til async/await

Mål: Bruk async/await på en trygg måte.

  • Opprett async-funksjoner
  • Vent på verdier med await
  • Håndter feil med try/catch
  • Parallelt kontra sekvensielt
Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 1

Liten Promise-hjelpefunksjon

Opprett en liten Promise-basert hjelpefunksjon for å teste await.

// delay returns a Promise that resolves after ms
function delay(ms, value) {
  return new Promise(function (resolve) {
    setTimeout(function () { resolve(value); }, ms);
  });
}

// Example usage
delay(10, "ok").then(function (v) {
  console.log("delay:", v);
});
Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 2

Grunnleggende om async-funksjoner

async markerer en funksjon som returnerer en Promise. Inne i den kan du bruke await.

// An async function can use await inside
async function greet() {
  const name = await delay(5, "Ayla");
  console.log("Hello,", name);
}

// Call it
greet();
Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 3

try/catch med await

Pakk await-uttrykk inn i try/catch når et trinn kan bli avvist.

// Simulate a failing task
function failAfter(ms, message) {
  return new Promise(function (resolve, reject) {
    setTimeout(function () { reject(new Error(message)); }, ms);
  });
}

async function runSafe() {
  try {
    const v = await failAfter(5, "boom");
    console.log("Value:", v);
  } catch (e) {
    console.log("Caught:", e.message);
  }
}

runSafe();
Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 4

Sekvensielt mønster

Sekvensielt: hver await venter på at den forrige skal bli ferdig, så tidene summeres.

// Sequential: total time ~ A + B
async function sequential() {
  const a = await delay(8, "A");
  const b = await delay(8, "B");
  console.log("seq:", a + b);
}

sequential();
Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 5

Parallelt med all

Parallelt: start oppgavene først, og bruk deretter await Promise.all. Total tid er omtrent ~ max(A, B).

// Parallel: start both, then await together
async function parallel() {
  const pa = delay(8, "A");
  const pb = delay(8, "B");
  const results = await Promise.all([pa, pb]);
  console.log("par:", results.join(""));
}

parallel();
Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 6

Quiz om parallelt og sekvensielt

Rask sjekk: Hvilket mønster er raskest for uavhengige oppgaver?

Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 7

Oppsummering

Oppsummering: Du skrev async-funksjoner, ventet på verdier, håndterte feil med try/catch og sammenlignet sekvensielle await-uttrykk med raskere parallelle Promise.all-kall.

Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt — illustrasjon 8
Gratis å komme i gang

Lær deg JavaScript med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
59
Leksjoner
200

Ofte stilte spørsmål

Er leksjonen «Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien JavaScript Academy, inkludert «Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i JavaScript Academy inneholder totalt 3 leksjoner.

Hva lærer jeg i «Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt»?

Opprett async-funksjoner, vent på resultater med await, fang feil og sammenlign sekvensielle og parallelle mønstre. Du øver på JavaScript Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med JavaScript Academy?

Ingen tidligere erfaring er nødvendig. JavaScript Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 3.

Hvor lang tid tar leksjonen «Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne JavaScript Academy-leksjonen?

Ja. Alle JavaScript Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Skrive async-funksjoner; try/catch; parallelt kontra sekvensielt
  2. Tidsavbrudd og avbryting med AbortController
  3. Mønstre for nye forsøk og backoff
← Tilbake til JavaScript Academy