Velkommen til TypeScript for utviklere! Dette er leksjon 1 av 9. Du kan starte uten konto — fremgangen lagres mens du jobber, og du kan ta en pause når som helst.
Hvorfor typer?
Hva TypeScript gir deg som JavaScript ikke gjør.
TypeScript er JavaScript med typer — beskrivelser av hvilke verdier koden din forventer, sjekket mens du skriver. Denne leksjonen handler om hvorfor den ideen ble så utbredt, hva den faktisk gir deg — og like viktig: når TypeScript er unødvendig.
Problemet typer løser
JavaScript stoler blindt på deg. Sender du en tekst dit et tall var tenkt, sier ingenting ifra — ikke før koden kjører, og ofte ikke engang da. Prisen blir NaN i handlekorgen, navnet blir undefined i e-posten, og du finner det i beste fall i en feilrapport fra en bruker. Et lite eksempel:
function rabatt(pris: number, prosent: number): number { return pris * (1 - prosent);} rabatt(249, 0.2); // fint — 199.2rabatt("249", 0.2); // rød strek med en gangDen siste linjen ville kjørt stille i JavaScript: en streng ganget med et tall gir NaN, uten advarsel. I TypeScript markeres den mens du skriver — : number lover at parameteren er et tall, og redaktøren holder løftet. Typene sjekkes før koden engang eksisterer i nettleseren.
Prøv selv
Feilens tre liv
Kodelinjen rabatt("249", 0.2) har tre liv. Trykk på hvert steg for å se hva som skjer.
Det finnes ikke feil her — trykk på alle tre hvis du vil.
Hva TypeScript gir deg som JavaScript ikke gjør
- feil som fanges mens du skriver — ikke når brukeren har funnet dem
- fullføring som vet hvilke felt objektene dine faktisk har
- trygg omorganisering: endrer du et feltnavn, markerer TypeScript hvert sted som må oppdateres
- dokumentasjon som ikke blir utdatert — en kommentar kan lyve, en type kan ikke
Merk deg likevel hva som allerede finnes: JavaScript-verdiene *har* typer. Det JavaScript mangler, er sjekken av hva du lover før kjøring. Prøv selv — denne kjenner nettleseren godt:
const navn = "Sofie";const alder = 28; console.log(typeof navn); // "string"console.log(typeof alder); // "number"Slik fungerer det hele i ett åndedrag: du skriver .ts-filer, et verktøy kompilerer dem til vanlig JavaScript, og nettleseren kjører bare JavaScriptet. Typene forsvinner i bygget — de finnes bare mens du utvikler, og den ferdige koden er ikke det minste raskere eller langsommere enn JavaScript du kunne skrevet for hånd. TypeScript gjør ikke siden din raskere; det gjør *deg* raskere.
Obs
TypeScript er ikke alltid nødvendig
Et lite skript, en rask prototype eller en nettside med femti linjer JavaScript har sjelden behov for et byggesteg og typesjekking. TypeScript er verktøyet for kode som skal leve lenge, endres ofte og deles med andre — ikke en obligasjon for alt du skriver.
Du kan nå
- forklare hvilket problem typer løser
- si hva TypeScript gir deg som JavaScript ikke gjør
- vite når TypeScript er unødvendig — og når det lønner seg