Sobes.tech
Junior

Šta je čista funkcija?

sobes.tech АИ

Одговор од АИ

Čista funkcija je funkcija koja ispunjava dva uslova:

  1. Deterministička: Kada se pozove sa istim argumentima, uvek vraća isti rezultat.
  2. Bez spoljnih efekata: Ne menja spoljašnje stanje ili podatke van svog opsega (na primer, ne menja globalne promenljive, ne zapisuje u fajl, ne pravi mrežne zahteve).

Primer čiste funkcije:

// Čista funkcija: uvek će vratiti zbir dva broja bez menjanja spoljašnjih promenljivih.
function add(a, b) {
  return a + b;
}

Primer nečiste funkcije (sa spoljni efekat):

// Nečista funkcija: menja spoljašnju promenljivu counter.
let counter = 0;

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

Primer nečiste (nedeterminističke) funkcije:

// Nečista funkcija: rezultat zavisi od trenutnog vremena.
function getCurrentTime() {
  return new Date().getTime();
}