Lecciones del módulo (2/4)
Funciones flecha
Las arrow functions (funciones flecha) son una sintaxis más compacta para escribir funciones. Son ideales para callbacks y funciones cortas.
Sintaxis básica
// 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;Las tres formas son equivalentes. La tercera es la más al estilo "JavaScript".
Cuándo puedes omitir las llaves y el return
Si el cuerpo es una sola expresión:
const quadrato = (n) => n * n;
const isAdult = (eta) => eta >= 18;
const saluto = (nome) => `Ciao, ${nome}!`;Si, en cambio, necesitas más instrucciones, se requieren las llaves y un return explícito:
const descrivi = (n) => {
const parita = n % 2 === 0 ? 'pari' : 'dispari';
return `${n} è ${parita}`;
};Un solo parámetro: paréntesis opcionales
const triplo = (n) => n * 3;
const triplo2 = (n) => n * 3; // anche questo va beneCon cero o dos o más parámetros, los paréntesis son obligatorios:
const ora = () => Date.now();
const min = (a, b) => (a < b ? a : b);Pruébalo tú mismo
Reescribe esta función clásica como una arrow function con return implícito: `function square(n) { return n * n; }`. Asígnala a la constante `square` y llámala con 5 (esperado 25).
Mostrar pista
const square = (n) => n * n;
Solución disponible después de 3 intentos
Ejercicio de repaso
Define una arrow function `describe(n)` que devuelva la cadena `<n> è pari` si n es par, de lo contrario `<n> è dispari`. Llámala con 7 como última expresión.
Mostrar pista
Usa las llaves y el cuerpo de la función si tienes más de una expresión.
Solución disponible después de 3 intentos