Junior
Czym jest wyrażenie funkcyjne i do czego jest potrzebne?
sobes.tech AI
Odpowiedź od AI
Wyrażenie funkcyjne to definicja funkcji wewnątrz innego wyrażenia. Nie jest deklarowane jako oddzielny operator function nazwa(...) {}, lecz przypisywane do zmiennej, właściwości obiektu lub używane jako argument innej funkcji.
Do czego to służy?
- Tworzenie funkcji anonimowych: Pozwala na zdefiniowanie funkcji bez nazwy, co jest przydatne dla funkcji zwrotnych lub jednorazowych.
- Zamknięcia (Closures): Wyrażenia funkcyjne są często używane do tworzenia zamknięć, umożliwiając funkcji "zapamiętanie" zmiennych z zewnętrznego zakresu, nawet po zakończeniu działania funkcji zewnętrznej.
- IIFE (Immediately Invoked Function Expressions): Zapewniają izolację kodu i zapobiegają zanieczyszczeniu przestrzeni globalnej.
- Dynamika definiowania funkcji: Funkcje mogą być tworzone i przypisywane w zależności od warunków wykonania programu.
Przykład anonimowego wyrażenia funkcyjnego:
// Przypisanie anonimowej funkcji do zmiennej
const greet = function(name) {
console.log(`Cześć, ${name}!`);
};
greet("Świat");
Przykład IIFE:
(function() {
// Kod wewnątrz tej funkcji jest wykonywany natychmiastowo
// a zmienne wewnątrz niej nie są dostępne z zewnątrz
let privateVariable = "sekret";
console.log(privateVariable);
})();
// console.log(privateVariable); // Błąd: privateVariable nie jest zdefiniowana