Sobes.tech
Junior

Co je to čistá funkce?

sobes.tech AI

Odpověď od AI

Čistá funkce je taková funkce, která splňuje dvě podmínky:

  1. Determinismus: Při volání se stejnými argumenty vždy vrací stejný výsledek.
  2. Absence vedlejších efektů: Nemění vnější stav nebo data mimo svůj rozsah (například nemění globální proměnné, neukládá data do souboru, neprovádí síťové požadavky).

Příklad čisté funkce:

// Čistá funkce: vždy vrátí součet dvou čísel, aniž by měnila vnější proměnné.
function add(a, b) {
  return a + b;
}

Příklad nečisté funkce (s vedlejším efektem):

// Nečistá funkce: mění vnější proměnnou counter.
let counter = 0;

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

Příklad nečisté (nedeterministické) funkce:

// Nečistá funkce: výsledek závisí na aktuálním čase.
function getCurrentTime() {
  return new Date().getTime();
}