Junior
Mis on puhas funktsioon?
sobes.tech AI
Vastus AI-lt
Puhas funktsioon on selline funktsioon, mis vastab kahele tingimusele:
- Determinism: Kui seda kutsutakse sama argumentidega, tagastab see alati sama tulemuse.
- Kohalike kõrvaltoimete puudumine: See ei muuda väliseid olekuid ega andmeid väljaspool oma ulatust (näiteks ei muuda globaalseid muutujaid, ei kirjuta faili, ei tee võrgu päringuid).
Puhas funktsiooni näide:
// Puhas funktsioon: tagastab alati kahe numbri summa, muutmata väliseid muutujaid.
function add(a, b) {
return a + b;
}
Ebakohane funktsioon (kõrvaltoimete tõttu):
// Ebakohane funktsioon: muudab välist muutuja counter.
let counter = 0;
function incrementCounter() {
counter++;
return counter;
}
Mitte-deterministlik funktsioon:
// Mitte-deterministlik funktsioon: tulemus sõltub praegusest ajast.
function getCurrentTime() {
return new Date().getTime();
}