Sobes.tech
Junior

Wat is een pure functie?

sobes.tech AI

Antwoord van AI

Een pure functie is een functie die aan twee voorwaarden voldoet:

  1. Deterministisch: Bij herhaaldelijk aanroepen met dezelfde argumenten, geeft ze altijd hetzelfde resultaat.
  2. Geen bijwerkingen: Ze verandert geen externe toestand of gegevens buiten haar scope (bijvoorbeeld, ze wijzigt geen globale variabelen, schrijft niet naar een bestand, doet geen netwerkverzoeken).

Voorbeeld van een pure functie:

// Pure functie: geeft altijd de som van twee getallen terug zonder externe variabelen te wijzigen.
function add(a, b) {
  return a + b;
}

Voorbeeld van een onzuivere functie (met bijwerking):

// Onzuivere functie: wijzigt de externe variabele counter.
let counter = 0;

function incrementCounter() {
  counter++;
  return counter;
}

Voorbeeld van een onzuivere (niet-deterministische) functie:

// Onzuivere functie: resultaat hangt af van de huidige tijd.
function getCurrentTime() {
  return new Date().getTime();
}