Wyrażenia funkcyjne w JavaScript

Wyrażenia funkcyjne są jednym z dwóch głównych sposobów definiowania funkcji w JavaScript, obok deklaracji funkcji. Są to funkcje anonimowe przypisywane do zmiennych lub używane jako argumenty dla innych funkcji. Wyrażenia funkcyjne pozwalają na tworzenie bardziej dynamicznych i elastycznych struktur kodu.

Definiowanie wyrażenia funkcyjnego

Wyrażenie funkcyjne tworzymy, przypisując funkcję anonimową do zmiennej. Funkcja ta może być następnie używana wszędzie tam, gdzie dostępna jest zmienna.

let greet = function(name) {
    console.log("Hello, " + name + "!");
};

greet("Alice"); // Wyświetla "Hello, Alice!"

Wyrażenia funkcyjne a deklaracje funkcji

Główna różnica między wyrażeniem funkcyjnym a deklaracją funkcji polega na hoistingu. Deklaracje funkcji są “wynoszone” na górę zakresu, co oznacza, że mogą być wywoływane przed ich zadeklarowaniem w kodzie. Wyrażenia funkcyjne, jako przypisania do zmiennych, podlegają hoistingu zmiennych, ale nie samych funkcji.

// Wywołanie deklaracji funkcji przed jej zadeklarowaniem
functionDeclaredBefore();
function functionDeclaredBefore() {
    console.log("Działa, bo to deklaracja funkcji.");
}

// Wywołanie wyrażenia funkcyjnego przed jego zdefiniowaniem
// functionExpressionBefore(); // Błąd: functionExpressionBefore is not a function
let functionExpressionBefore = function() {
    console.log("Nie działa, bo to wyrażenie funkcyjne.");
};

Podsumowanie

Wyrażenia funkcyjne oferują elastyczność i mocne narzędzie do tworzenia funkcji w JavaScript. Pozwalają na przypisanie funkcji do zmiennych, przekazanie jako argumenty do innych funkcji i tworzenie IIFE dla izolacji kodu.

Jeżeli chcesz przyśpieszyć swoją naukę chciałbym polecić mój kurs video JavaScript w którym nauczysz się tego języka od podstaw do zaawansowanych jego koncepcji.

 

 

 

 

 

Scroll to Top