Sobes.tech
Middle

Aké sú vlastnosti práce s function expression a function declaration v JavaScripte?

sobes.tech AI

Odpoveď od AI

Vyhlásenie funkcie (vyhlásenie funkcie):

  • Definuje sa pomocou kľúčového slova function, nasledovaného názvom funkcie a potom zátvorkami pre parametre.
  • Podlieha hoistingu: funkcia je dostupná v rozsahu skôr, ako je jej skutočné vyhlásenie v kóde.
  • Použite ju, keď chcete vytvoriť pomenovanú funkciu a poradie volaní nie je dôležité.
function helloWorld() {
  // Zobrazuje správu v konzole
  console.log("Hello, World!");
}

Výraz funkcie (výraz funkcie):

  • Definuje sa ako časť výrazu, zvyčajne priradená premennej.
  • Nie je podrobená hoistingu: funkcia je dostupná až po vykonaní príslušného riadku kódu.
  • Môže byť s názvom alebo bez názvu (anonymná).
  • Použite ju, keď potrebujete odovzdať funkciu ako argument, vytvoriť okamžite volanú funkciu (IIFE) alebo definovať funkciu v podmienke.
const greet = function(name) {
  // Vráti pozdrav
  return `Ahoj, ${name}!`;
};

Porovnanie:

Vlastnosť Vyhlásenie funkcie Výraz funkcie
Hoisting Áno Nie
Dostupnosť Pred vyhlásením v kóde Po vyhlásení v kóde
Názov Povinné Môže byť anonymné
Syntax function názov(...) {...} const premenná = function(...) {...}