Comment vérifier le type de fonction en JavaScript

Dans les problèmes ci-dessous, vous devrez déterminer si la fonction est définie comme Function Declaration ou Function Expression.

Dans les cas simples, cela ne présente pas de difficulté à faire visuellement. Mais comment vérifier que vous l'avez fait correctement ? Utilisez la différence entre Function Declaration et Function Expression : les premières peuvent être appelées avant leur définition, et les secondes - non.

Disons que nous avons une fonction comme celle-ci :

javascriptlet test = function() {
  console.log('!');
}

Accédons à cette fonction avant sa définition :

javascripttest(); // affichera une erreur dans la console, donc Function Expression

let test = function() {
  console.log('!');
}

Voici un autre exemple :

javascriptfunc(); // affichera '!', donc Function Declaration

function func() {
  console.log('!');
}

Mettons un plus devant notre fonction :

javascriptfunc(); // affichera une erreur dans la console, donc Function Expression

+function func() {
  console.log('!');
}

Comme la fonction ci-dessus est une Function Expression et qu'elle n'est assignée à aucune variable, elle ne peut en aucun cas être appelée, car par son nom func elle sera inaccessible.

Задание 1

Déterminez si la fonction présentée est une Function Declaration ou une Function Expression :

javascriptlet test = function func() {
  console.log('!');
}
Задание 2

Déterminez si la fonction présentée est une Function Declaration ou une Function Expression :

javascriptconsole.log(
  function func() {
    console.log('!');
  }
);
Задание 3

Déterminez si la fonction présentée est une Function Declaration ou une Function Expression :

javascript+function func() {
  console.log('!');
}
Задание 4

Déterminez si la fonction présentée est une Function Declaration ou une Function Expression :

javascriptfunction func() {
  console.log('!');
}