Différence entre les déclarations de fonction
Les deux méthodes de déclaration de fonction sont équivalentes, mais il y a une différence essentielle : les fonctions déclarées comme Function Declaration seront accessibles, même si on y accède avant qu'elles n'aient été déclarées.
Voir l'exemple :
// On accède à la fonction avant sa déclaration :
func(); //affichera '!'
function func() {
console.log('!');
}
Et les expressions de fonction sont créées au moment de l'exécution du code et ne sont pas accessibles au-dessus. Par conséquent, ce code générera une erreur :
func(); //erreur, cette fonction n'existe pas encore !
let func = function() {
console.log('!');
};
Créez une fonction en tant que Function Declaration. Vérifiez qu'elle sera accessible au-dessus de l'endroit de sa déclaration.
Créez une fonction en tant que Function Expression. Vérifiez qu'elle ne sera pas accessible au-dessus de l'endroit de sa déclaration.