Salt la conținutul principal
Modulul 4 · Lecția 2 din 414/32 în curs~10 min
Lecții din modul (2/4)

Funcția săgeată

Funcțiile săgeată sunt o sintaxă mai compactă pentru scrierea funcțiilor. Ideal pentru apeluri inverse și funcții scurte.

Sintaxa de bază

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

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

// arrow with implicit return (concise body, no braces)
const somma3 = (a, b) => a + b;

Cele trei forme sunt echivalente. Al treilea este cel mai „JavaScript-y”.

Când puteți omite bretele și puteți reveni

Dacă corpul este o singură expresie:

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

Dacă, în schimb, aveți nevoie de mai multe instrucțiuni, aveți nevoie de acolade și de un return explicit:

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

Un parametru: paranteze opționale

JS
const triplo = (n) => n * 3;
const triplo2 = (n) => n * 3; // this is fine too

Cu parametrii zero sau doi+, parantezele sunt obligatorii:

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

Încearcă

Exercițiu#js.m4.l2.e1
Încercări: 0Se încarcă…

Rescrie această funcție ca o funcție săgeată cu returnare implicită: `function square(n) { return n * n; }`. Atribuiți-l la const `pătrat` și sunați-l cu 5 (așteptată 25).

Se încarcă editorul...
Afișează indiciu

const pătrat = (n) => n * n;

Soluție disponibilă după 3 încercări

Exercițiu de revizuire

Exercițiu#js.m4.l2.e2
Încercări: 0Se încarcă…

Definiți o funcție săgeată `describe(n)` care returnează șirul `<n> è pari` dacă n este par, în caz contrar `<n> è dispari`. Apelați-l cu 7 ca ultima expresie.

Se încarcă editorul...
Afișează indiciu

Folosiți corpul cu bretele atunci când aveți mai multe expresii.

Soluție disponibilă după 3 încercări