Lezioni del modulo (2/4)
Arrow function
Le arrow function sono una sintassi più compatta per scrivere funzioni. Ideali per callback e funzioni brevi.
Sintassi base
// 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;Le tre forme sono equivalenti. La terza è la più "JavaScript-y".
Quando puoi omettere graffe e return
Se il corpo è una sola espressione:
const quadrato = (n) => n * n;
const isAdult = (eta) => eta >= 18;
const saluto = (nome) => `Ciao, ${nome}!`;Se invece servono più istruzioni, servono le graffe e un return esplicito:
const descrivi = (n) => {
const parita = n % 2 === 0 ? 'pari' : 'dispari';
return `${n} è ${parita}`;
};Un solo parametro: parentesi opzionali
const triplo = (n) => n * 3;
const triplo2 = (n) => n * 3; // anche questo va beneCon zero o due+ parametri, le parentesi sono obbligatorie:
const ora = () => Date.now();
const min = (a, b) => (a < b ? a : b);Prova tu
Riscrivi questa function come arrow function con return implicito: `function square(n) { return n * n; }`. Assegnala alla const `square` e chiamala con 5 (atteso 25).
Mostra suggerimento
const square = (n) => n * n;
Soluzione disponibile dopo 3 tentativi
Esercizio di ripasso
Definisci una arrow function `describe(n)` che ritorni la stringa `<n> è pari` se n è pari, altrimenti `<n> è dispari`. Chiamala con 7 come ultima espressione.
Mostra suggerimento
Usa il corpo con graffe quando hai più di un'espressione.
Soluzione disponibile dopo 3 tentativi