Skip to content

Vanliga konstruktioner 1

Den här artikeln använder node för att visa koden. Vill du koda med startar du node eller lägger in koden i en fil som du exekverar.

Starta node
$ node
Welcome to Node.js v22.11.0.
Type ".help" for more information.
>

Markören > visar att den så kallade interpretatorn är igång. Det verkar ju lovande.

Interpretatorn

Man brukar se JavaScript som ett interpreterat språk och inte ett kompilerat. Traditionella språk som C# eller C++ behöver en kompilator som översätter koden till maskinkod så datorn förstår den och kan exekvera den. Även fast tolkningsprocessen till viss del kan liknas vid en kompilering så kallas det som sagt ett interpreterande språk. Oftast kör vi JavaScript i webbläsaren och där tolkar webbläsaren koden rad för rad innan den exekveras. I dagasläget använder webbläsarna en teknik som kallas JIT compilation (Just In Time), som renderar koden direkt vid exekvering (och de kallar faktiskt sin teknik för “kompilering”).

Interpretatorn tolkar koden och översätter den till maskinkod så datorn kan hantera den. Vi kan använda interpretatorn för att snabbt testa olika konstruktioner. Vi testar en kodsnutt:

Interpretatorn
> let myVar = 42
undefined
> myVar
42
>

Vi kan se att det returneras undefined efter vi deklarerat och definierat variabeln myVar. Alla uttryck returnerar undefined om de inte har ett annat värde. När vi till exempel bara kör variabeln så returneras dess värde.

Vi avslutar interpretatorn med Ctrl+D.

JavaScript i fil

Om man hellre vill spara koden så vi kan exekvera den fler gånger utan att behöva ha igång en interpretator. Om vi lägger JavaScriptkoden i en fil så kan vi exekvera filen med $ node filename.js, där filename då byts ut mot din egna fil.

Skapa filen variables.js.

Skapa en fil
$ touch variables.js

Öppna den i valfri editor och lägg in följande kod:

variables.js
const value = 25
const text = `lite text`
let newValue = value + 15
newValue += 2
console.log(value)
console.log(text)
console.log(newValue)

Vi skapar några variabler vi kan leka med. När vi deklarerar variablerna behöver vi berätta hur de ska bete sig. Vi väljer mellan let och const. De variabler vi inte ska ändra på skapar vi som konstanter, const. Vi skriver ju bara ut dem. Ska vi ändra på dem använder vi let.

Nu kan vi köra programmet med $ node variables.js:

Exekvera filen
$ node variables.js
25
lite text
42

Dåså, nu vet vi olika sätt att köra vår kod så nu kan vi titta närmare på de vanligaste konstruktionerna.

Vanliga konstruktioner

Vi tar och tittar på de vanligaste konstruktionerna och hur de se ut i JavaScript.

If/else/else if

Vi kontrollerar om variablen value är större än, mindre än eller samma som maxValue.

if/else/else if statement
const value = 42
const maxValue = 40
if (value > maxValue) {
console.log(`${value} is higher than ${maxValue}`)
} else if (value < maxValue) {
console.log(`${value} is lower than ${maxValue}`)
} else {
console.log(`${value} is the same as ${maxValue}`)
}

Här radas alla tre upp direkt men man behöver inte använda alla på en gång. Om man till exempel bara vill kontrollera om value är större än maxValue räcker det med if:

if statement
const value = 42
const maxValue = 40
if (value > maxValue) {
console.log(`${value} is higher than ${maxValue}`)
}

Switch statement

Vi skriver ut en dag baserat på värdet av tex metoden .getDay() som returnerar en siffra.

switch statement
let day = null
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
break
default:
day = "Not a valid weekday"
}
console.log(day) // Prints the current day of the week

Avslutningsvis

Det var lite kort om de vanligaste konstruktionera i JavaScript och dess syntax. Dessa kan vara bra att ha tillhands när vi gör labben.