Saltar al contenido principal
eLearner.app
Módulo 4 · Lección 2 de 414/32 en el curso~10 min
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

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;

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:

JS
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:

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

Un solo parámetro: paréntesis opcionales

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

Con cero o dos o más parámetros, los paréntesis son obligatorios:

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

Pruébalo tú mismo

Ejercicio#js.m4.l2.e1
Intentos: 0Cargando...

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).

Cargando editor...
Mostrar pista

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

Solución disponible después de 3 intentos

Ejercicio de repaso

Ejercicio#js.m4.l2.e2
Intentos: 0Cargando...

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.

Cargando editor...
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