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(...) {...} |