TypeScript Academy · Lektion

JavaScripts problemområder: runtime-fejl

Udforsk almindelige JavaScript-fejl, der kun viser sig under kørsel.

Lektion 1 af 413 trin

JavaScripts problemområder: runtime-fejl er en gratis TypeScript Academy-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i TypeScript Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. TypeScript Academy-kurset indeholder 4 lektioner i alt.

Velkommen

I denne lektion undersøger vi de runtime-fejl, der var med til at føre til oprettelsen af TypeScript. JavaScript er fleksibelt – men den fleksibilitet kan føre til fejl, som er svære at finde.

Den lydløse fejl ved typekonvertering

JavaScript konverterer lydløst mellem typer. Når du lægger et tal til en streng, returnerer resultatet en streng i stedet for en fejl. Det giver uventet adfærd under kørsel.
// JavaScript
let total = 5 + '10'; // '510' not 15
console.log(total);   // '510'

Adgang til udefinerede egenskaber

JavaScript tillader adgang til ikke-eksisterende egenskaber på objekter. Resultatet er `undefined` i stedet for en fejl, og det spreder sig ofte lydløst.
const user = { name: 'Alice' };
console.log(user.age); // undefined — no error thrown

Kald af ikke-funktioner

Hvis en variabel indeholder en værdi, der ikke er en funktion, og du kalder den, kaster JavaScript kun en TypeError under kørsel – ikke under udviklingen.
const greet = 'hello';
greet(); // TypeError: greet is not a function

Stavefejl i egenskabsnavne

En stavefejl i et egenskabsnavn giver `undefined` uden nogen advarsel. Disse fejl er svære at opdage i store kodebaser.
const config = { timeout: 3000 };
console.log(config.tiemout); // undefined — typo goes unnoticed

Forkerte argumenttyper

JavaScript-funktioner accepterer argumenter af enhver type. Hvis du sender en forkert type, får du uventede resultater i stedet for en tydelig fejl.
function double(n) { return n * 2; }
console.log(double('5')); // 10 — but '5' * 2 uses coercion

Nedbrud ved dereferering af null

Et af de mest almindelige nedbrud under kørsel opstår, når du tilgår en egenskab på null eller undefined. TypeScripts strenge nullkontrol forhindrer denne type fejl.
let element = document.querySelector('.missing');
console.log(element.textContent); // TypeError: Cannot read properties of null

Problemet ved refaktorering

Når du omdøber en funktion eller en egenskab i almindelig JavaScript, findes der ikke noget værktøj, der pålideligt finder alle anvendelser. TypeScripts typesystem gør sikker refaktorering mulig på tværs af store kodebaser.

Kørselsfejl kontra kompileringsfejl

JavaScript-fejl opstår under kørsel – ofte i produktion. TypeScript opdager mange af disse fejl under kompileringen, før din kode overhovedet kører.

IDE-understøttelsen forringes uden typer

Uden typeoplysninger kan din IDE ikke pålideligt tilbyde autofuldførelse, gå til definition eller sikker omdøbning. Typer gør udviklingsværktøjerne markant bedre.

Problemet viser sig i stor skala

Små scripts fungerer fint i JavaScript. Men når projekter vokser til tusindvis af filer og mange bidragydere, bliver manglen på typer en væsentlig kilde til fejl og vedligeholdelsesarbejde.

Hurtigt tjek

Hvilken adfærd i JavaScript hjælper TypeScripts strenge nullkontrol med at forhindre?

Opsummering

JavaScripts fleksibilitet – typekonvertering, udefinerede egenskaber og manglende kontrol af argumenter – fører til lydløse fejl, som først viser sig under kørsel. TypeScript blev udviklet til at opdage disse fejl, før koden kører.
Gratis at komme i gang

Lær TypeScript med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
101
Lektioner
352

Ofte stillede spørgsmål

Er lektionen “JavaScripts problemområder: runtime-fejl” gratis?

Ja — hele teksten til “JavaScripts problemområder: runtime-fejl” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af TypeScript Academy-kurset, skal du opgradere til CoddyKit PRO. TypeScript Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “JavaScripts problemområder: runtime-fejl”?

Udforsk almindelige JavaScript-fejl, der kun viser sig under kørsel. Du øver dig i TypeScript Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på TypeScript Academy?

Der kræves ingen tidligere erfaring. TypeScript Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.

Hvor lang tid tager lektionen “JavaScripts problemområder: runtime-fejl”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne TypeScript Academy-lektion?

Ja. Alle TypeScript Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. JavaScripts problemområder: runtime-fejl
  2. Hvad TypeScript tilføjer til JavaScript
  3. Kompilering af TypeScript til JavaScript
  4. Hvornår TypeScript bør bruges i projekter
← Tilbage til TypeScript Academy