Passer au contenu principal
eLearner.app
Module 4 · Leçon 1 sur 413/32 dans le cours~10 min
Leçons du module (1/4)

Déclarer une fonction

Une fonction est un bloc de code réutilisable auquel tu donnes un nom. Tu l'appelles en passant des arguments, elle exécute son corps et peut renvoyer une valeur avec return.

Déclaration classique

La forme la plus courante est la déclaration de fonction (function declaration) :

JS
function saluta(nome) {
  return `Ciao, ${nome}!`;
}

saluta('Anna'); // 'Ciao, Anna!'
saluta('Marco'); // 'Ciao, Marco!'

À noter :

  • nome est le paramètre (variable locale à la fonction).
  • 'Anna' est l'argument (la valeur passée lors de l'appel).
  • Sans return, la fonction renvoie undefined.

Expression de fonction (function expression)

Les fonctions en JS sont des valeurs : elles peuvent être assignées à une variable.

JS
const quadrato = function (n) {
  return n * n;
};

quadrato(4); // 16

Les deux formes sont presque équivalentes, avec une différence importante :

  • La déclaration de fonction est soumise au "hoisting" : tu peux l'appeler même avant la ligne où elle apparaît dans le code.
  • L'expression de fonction suit les règles de const/let : elle n'existe qu'après son assignation.

Sans return explicite

JS
function logga(msg) {
  console.log(`[LOG] ${msg}`);
  // niente return → la funzione ritorna undefined
}

const r = logga('ciao'); // stampa "[LOG] ciao"
r; // undefined

À toi de jouer

Exercice#js.m4.l1.e1
Tentatives : 0Chargement…

Déclare une fonction `greet(name)` qui renvoie la chaîne de caractères `Ciao, <name>!`. Appelle-la ensuite avec 'Anna' et utilise le résultat comme dernière expression.

Chargement de l'éditeur…
Afficher l'indice

function greet(name) { return ... }

Solution disponible après 3 tentatives

Exercice de révision

Exercice#js.m4.l1.e2
Tentatives : 0Chargement…

Écris une expression de fonction `double` qui, étant donné un nombre, renvoie son double. Appelle-la avec 7 comme dernière expression (attendu : 14).

Chargement de l'éditeur…
Afficher l'indice

const double = function (n) { return ... };

Solution disponible après 3 tentatives