FAGPORTALEN

Funktioner og DOM-manipulation

Computerspace · FGU · Programmering i JavaScript

🎯 Hvad er funktioner og DOM-manipulation?

Funktioner er genbrugelige kodeblokke. DOM-manipulation lader JavaScript ændre HTML og CSS på en hjemmeside.

Funktioner i JavaScript:

```javascript

// Traditionel funktion

function hilsen(navn) {

return Hej, ${navn}!;

}

// Function expression

const hilsen2 = function(navn) {

return Hej, ${navn}!;

};

// Arrow function (C++11 lambda-lignende, moderne JS)

const hilsen3 = (navn) => Hej, ${navn}!;

const tilføj = (a, b) => a + b; // Implicit return

// Higher-order functions – funktioner der tager funktioner som argument

const tal = [1, 2, 3, 4, 5];

const dobbelt = tal.map(x => x * 2); // [2, 4, 6, 8, 10]

const store = tal.filter(x => x > 2); // [3, 4, 5]

const sum = tal.reduce((acc, x) => acc + x, 0); // 15

```

DOM-manipulation – ændr HTML fra JavaScript:

```javascript

// Find HTML-elementer

const overskrift = document.getElementById("titel");

const knap = document.querySelector(".min-knap"); // CSS selector

const alleLinks = document.querySelectorAll("a"); // Alle links

// Ændr indhold og styling

overskrift.textContent = "Ny titel!";

overskrift.innerHTML = "<strong>Fed titel!</strong>";

overskrift.style.color = "blue";

overskrift.classList.add("aktiv");

overskrift.classList.remove("skjult");

```

Event listeners – reagér på brugerhandlinger:

```javascript

const knap = document.getElementById("minKnap");

// Lyt efter klik

knap.addEventListener("click", function() {

console.log("Knappen blev klikket!");

});

// Arrow function (kortere)

knap.addEventListener("click", () => {

alert("Klik!");

});

// Med event-objekt

knap.addEventListener("click", (event) => {

console.log("Klik på:", event.target);

event.preventDefault(); // Forhindre standard browser-adfærd

});

// Tastatur-event

document.addEventListener("keydown", (e) => {

});

```

---

🎓 Læringsmål for Funktioner og DOM-manipulation

Læringsmål

Sådan kan du arbejde med emnet

⚠️ Typiske fejl at undgå

---

💡 Tips til at komme i gang

Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.

Prøv Fagportalen gratis

🤖 Denne side er skrevet med kunstig intelligens og fagligt gennemgået af Fagportalen, som har det redaktionelle ansvar. Finder du en fejl, så skriv til support@fagportalen.dk.