Sobes.tech
Middle

Τι είναι το κλείσιμο στη JavaScript; Δώστε ένα παράδειγμα.

sobes.tech AI

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

Το κλείσιμο (closure) στην JavaScript είναι μια λειτουργία που «θυμάται» το λεξικό περιβάλλον της, ακόμα και αν καλείται εκτός του αρχικού πεδίου ορατότητας. Αυτό επιτρέπει στη λειτουργία να έχει πρόσβαση σε μεταβλητές από τη εξωτερική λειτουργία μετά το τέλος της εκτέλεσής της.

Παράδειγμα:

function makeCounter() {
  let count = 0;
  return function() {
    count++;
    return count;
  };
}

const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2

Εδώ, η εσωτερική λειτουργία διατηρεί την πρόσβαση στη μεταβλητή count της εξωτερικής λειτουργίας makeCounter, δημιουργώντας ένα κλείσιμο (closure).