Sobes.tech
Junior

Ce este o expresie funcțională și pentru ce este nevoie?

sobes.tech AI

Răspuns de la AI

Expresia funcțională este o definiție a funcției în interiorul unei alte expresii. Nu este declarată ca un operator separat function nume(...) {}, ci este atribuită unei variabile, unei proprietăți a unui obiect sau utilizată ca argument al altei funcții.

Pentru ce este nevoie?

  • Crearea funcțiilor anonime: Permite definirea unei funcții fără nume, ceea ce este util pentru callback-uri sau funcții de unică folosință.
  • Closure-uri: Expresiile funcționale sunt adesea folosite pentru a crea closure-uri, permițând funcției să "țină minte" variabile din mediul exterior, chiar și după ce funcția externă s-a încheiat.
  • IIFE (Immediately Invoked Function Expressions): Asigură izolarea codului și previne poluarea spațiului global.
  • Definirea dinamică a funcțiilor: Funcțiile pot fi create și atribuite în funcție de condițiile de execuție ale programului.

Exemplu de expresie funcțională anonimă:

// Atribuirea unei funcții anonime la o variabilă
const greet = function(name) {
  console.log(`Salut, ${name}!`);
};

greet("Lume");

Exemplu de IIFE:

(function() {
  // Codul din interiorul acestei funcții se execută imediat
  // și variabilele din interior nu sunt accesibile din exterior
  let privateVariable = "secret";
  console.log(privateVariable);
})();

// console.log(privateVariable); // Eroare: privateVariable nu este definită