Typekonvertering: sikre mønstre, der undgår overraskelser
Forstå implicit og eksplicit typekonvertering. Foretræk tydelige konverteringer med Number/String/Boolean, og håndter NaN sikkert.
Typekonvertering: sikre mønstre, der undgår overraskelser er en gratis JavaScript Academy-lektion på CoddyKit. Dette er lektion 3 af 3. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i JavaScript Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. JavaScript Academy-kurset indeholder 3 lektioner i alt.
Introduktion
Mål: Se, hvornår JavaScript konverterer typer, hvilke resultater det giver, og hvordan du bruger eksplicitte konverteringer til at få forudsigelig kode.
- Implicit kontra eksplicit
- Number/String/Boolean
- Sikker håndtering af NaN

Demo af implicit typekonvertering
+ med en streng udløser sammenkædning; - og * forsøger numerisk konvertering.
// Implicit coercion can surprise beginners
console.log("5" + 1);
// "51" (string concatenation)
console.log(5 + "1");
// "51" (number -> string)
console.log("5" - 1);
// 4 (string -> number)
console.log("5" * 2);
// 10 (string -> number)

Eksplicitte konverteringer
Brug Number(x), String(x) og Boolean(x) for at gøre koden tydelig.
// Prefer explicit, readable casts
const n = Number("42");
// 42
const s = String(42);
// "42"
const t = Boolean("hi");
// true (non-empty string)
const f = Boolean("");
// false (empty string)
console.log(n, s, t, f);

Number kontra parseInt
Number(x) kræver en streng, der udelukkende indeholder et tal; parseInt fortolker kun de indledende cifre.
// Number vs parseInt with examples
console.log(Number("42"));
// 42 (full string must be numeric)
console.log(parseInt("42", 10));
// 42
console.log(parseInt("42px", 10));
// 42 (stops at non-digit)
console.log(Number("42px"));
// NaN (not a pure number)

Tjek af NaN
Brug Number.isNaN til at teste NaN uden ekstra typekonvertering.
// NaN is "Not a Number" and is not equal to itself
const bad = Number("oops");
// NaN
console.log(bad === NaN);
// false
console.log(Number.isNaN(bad));
// true (use this)
console.log(isNaN("5"));
// false (string coerces to number 5)

Sikkerhedstjekliste
Sikre mønstre:
- Foretræk === og eksplicitte konverteringer.
- Brug Number(x) til numeriske strenge; undgå smarte tricks.
- Valider inddata, og kontrollér Number.isNaN efter fortolkning.

Quiz om eksplicit konvertering
Hurtigt tjek: Eksplicit numerisk konvertering.

Opsummering
Opsummering: Implicit typekonvertering kan overraske. Foretræk eksplicitte konverteringer med Number/String/Boolean, og kontrollér med Number.isNaN, hvor det er nødvendigt.

Lær JavaScript 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
- 59
- Lektioner
- 200
Ofte stillede spørgsmål
Er lektionen “Typekonvertering: sikre mønstre, der undgår overraskelser” gratis?
Ja — alle 3 lektioner i læringssporet JavaScript Academy, inklusive “Typekonvertering: sikre mønstre, der undgår overraskelser”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. JavaScript Academy-kurset indeholder 3 lektioner i alt.
Hvad lærer jeg i “Typekonvertering: sikre mønstre, der undgår overraskelser”?
Forstå implicit og eksplicit typekonvertering. Foretræk tydelige konverteringer med Number/String/Boolean, og håndter NaN sikkert. Du øver dig i JavaScript 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å JavaScript Academy?
Der kræves ingen tidligere erfaring. JavaScript 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 3 af 3.
Hvor lang tid tager lektionen “Typekonvertering: sikre mønstre, der undgår overraskelser”?
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 JavaScript Academy-lektion?
Ja. Alle JavaScript 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
- Primitiver vs. objekter og kernetyper
- typeof, truthy/falsy og == vs. ===
- Typekonvertering: sikre mønstre, der undgår overraskelser