Sobes.tech
Junior

Τι είναι μια καθαρή συνάρτηση;

sobes.tech AI

Απάντηση από AI

Μία καθαρή συνάρτηση είναι μια συνάρτηση που πληροί δύο προϋποθέσεις:

  1. Καθοριστικότητα: Όταν καλείται με τα ίδια επιχειρήματα, επιστρέφει πάντα το ίδιο αποτέλεσμα.
  2. Έλλειψη παρενεργειών: Δεν τροποποιεί την εξωτερική κατάσταση ή δεδομένα εκτός του πεδίου της (π.χ., δεν τροποποιεί παγκόσμιες μεταβλητές, δεν γράφει σε αρχεία, δεν κάνει δικτυακά αιτήματα).

Παράδειγμα καθαρής συνάρτησης:

// Καθαρή συνάρτηση: πάντα θα επιστρέφει το άθροισμα δύο αριθμών χωρίς να αλλάζει εξωτερικές μεταβλητές.
function add(a, b) {
  return a + b;
}

Παράδειγμα μη καθαρής συνάρτησης (με παρενέργεια):

// Μη καθαρή συνάρτηση: τροποποιεί την εξωτερική μεταβλητή counter.
let counter = 0;

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

Παράδειγμα μη καθαρής (μη-καθοριστικής) συνάρτησης:

// Μη καθαρή συνάρτηση: το αποτέλεσμα εξαρτάται από την τρέχουσα ώρα.
function getCurrentTime() {
  return new Date().getTime();
}