Spring til indhold
Academi.dk

JavaScript

Funktioner i JavaScript

Begynder DA↔EN-ordliste 2 øvelser

En funktion er et stykke kode, du giver et navn, så du kan køre det igen senere. Den kan tage værdier ind som parametre og give en værdi tilbage med return. Det er den vigtigste måde at undgå at skrive det samme flere steder, og at holde koden læsbar.

Forudsætter, at du har set variabler i javascript .

En opskrift, du kan følge flere gange

En funktion er en opskrift: den står ét sted, og du kan bruge den, så tit du vil, med forskellige ingredienser.

Eksempel
function hilsPaa(navn) {
return "Hej, " + navn + "!";
}

console.log(hilsPaa("Ida"));
console.log(hilsPaa("Omar"));

Output

Tryk på “Kør koden”.

Der sker to ting her, og de er værd at holde adskilt:

  • Erklæringen er linjerne med function. De definerer opskriften. Der sker ingenting, når JavaScript læser dem.
  • Kaldet er hilsPaa("Ida"). Det er der, koden faktisk kører.

Skriver du kun erklæringen og glemmer at kalde funktionen, sker der ingenting - og der kommer heller ingen fejl. Det forvirrer mange første gang.

Parametre og argumenter

navn i erklæringen er en parameter: et navn på den værdi, funktionen skal have ind. "Ida" i kaldet er et argument: den konkrete værdi. Inde i funktionen opfører parameteren sig som en helt almindelig variabel.

Du kan have flere, adskilt af komma, og de bliver parret op i rækkefølge:

Eksempel
function pris(antal, styk) {
return antal * styk;
}

console.log(pris(3, 49.5));

Output

Tryk på “Kør koden”.

Sender du færre argumenter, end der er parametre, bliver resten undefined. Det giver ingen fejl. Bare et mærkeligt resultat.

return stopper funktionen

return gør to ting på én gang: sender en værdi tilbage, og afslutter funktionen med det samme. Kode efter et return kører aldrig.

Eksempel
function beskriv(karakter) {
if (karakter < 2) {
  return "Ikke bestået";
}

return "Bestået";
}

console.log(beskriv(0));
console.log(beskriv(7));

Output

Tryk på “Kør koden”.

Det bruges bevidst til at komme ud tidligt og undgå dybe if-kæder.

Eksempel
function forkert(a, b) {
console.log(a + b);
}

function rigtig(a, b) {
return a + b;
}

const x = forkert(2, 3);
const y = rigtig(2, 3);

console.log("x er " + x);
console.log("y er " + y);

Output

Tryk på “Kør koden”.

De to skrivemåder

Du vil møde funktioner skrevet på to måder. De gør det samme her:

Eksempel
function dobbelt(tal) {
return tal * 2;
}

const tredobbelt = (tal) => {
return tal * 3;
};

console.log(dobbelt(5));
console.log(tredobbelt(5));

Output

Tryk på “Kør koden”.

Den nederste hedder en arrow function. Den fylder mindre og bruges især, når en funktion skal sendes med som argument til en anden funktion. Det møder du i array-metoder.

Hvad en god funktion gør

  • Én ting. Kan du ikke beskrive den i én sætning uden “og”, bør den nok deles.
  • Navn med et udsagnsord. beregnMoms, ikke moms.
  • Ingen overraskelser. Samme input skal give samme output.

Kort opsamling

  • Erklæring definerer, kald udfører.
  • Parametre er navne, argumenter er værdier.
  • return afleverer værdien og stopper funktionen.
  • console.log er ikke en erstatning for return.

Øv dig

Læs videre

Senest gennemgået .