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

Funciones flecha

Les fonctions fléchées (arrow functions) sont une syntaxe plus compacte pour écrire des fonctions. Elles sont idéales pour les callbacks et les fonctions courtes.

Syntaxe de base

JS
// function classica
const somma = function (a, b) {
  return a + b;
};

// arrow equivalente
const somma2 = (a, b) => {
  return a + b;
};

// arrow con return implicito (corpo sintetico, niente graffe)
const somma3 = (a, b) => a + b;

Les trois formes sont équivalentes. La troisième est la plus typique de l'écosystème JavaScript.

Quand peut-on omettre les accolades et le return ?

Si le corps est une seule expression :

JS
const quadrato = (n) => n * n;
const isAdult = (eta) => eta >= 18;
const saluto = (nome) => `Ciao, ${nome}!`;

Si, en revanche, plusieurs instructions sont nécessaires, il faut utiliser des accolades et un return explicite :

JS
const descrivi = (n) => {
  const parita = n % 2 === 0 ? 'pari' : 'dispari';
  return `${n} è ${parita}`;
};

Un seul paramètre : parenthèses optionnelles

JS
const triplo = (n) => n * 3;
const triplo2 = (n) => n * 3; // anche questo va bene

Avec zéro ou deux paramètres ou plus, les parenthèses sont obligatoires :

JS
const ora = () => Date.now();
const min = (a, b) => (a < b ? a : b);

À toi de jouer

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

Réécris cette fonction classique sous forme de fonction fléchée avec return implicite : `function square(n) { return n * n; }`. Assigne-la à la constante `square` et appelle-la avec 5 (attendu : 25).

Chargement de l'éditeur…
Afficher l'indice

const square = (n) => n * n;

Solution disponible après 3 tentatives

Exercice de révision

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

Définis une fonction fléchée `describe(n)` qui renvoie la chaîne de caractères `<n> è pari` si n est pair, sinon `<n> è dispari`. Appelle-la avec 7 comme dernière expression.

Chargement de l'éditeur…
Afficher l'indice

Utilise le corps avec des accolades lorsque tu as plus d'une expression.

Solution disponible après 3 tentatives