logo

Funzioni delle frecce in JavaScript

Cos'è la funzione freccia?

Funzione freccia {()=>} è un modo conciso di scrivere le funzioni JavaScript in modo più breve. Funzioni delle frecce sono stati introdotti nella versione ES6. Rendono il nostro codice più strutturato e leggibile.

Funzioni delle frecce sono funzioni anonime cioè funzioni senza nome ma spesso vengono assegnate a qualsiasi variabile. Sono anche chiamati Funzioni Lambda .



Sintassi:

const gfg = () =>{ console.log( 'Ciao geek!' ); }>

Gli esempi seguenti mostrano il funzionamento delle funzioni Freccia in JavaScript.

Funzione freccia senza parametri

Javascript
const gfg = () =>{ console.log( 'Ciao da GeekforGeeks!' ); } gfg();>

Produzione
Hi from GeekforGeeks!>

Funzione freccia con parametri

Javascript
const gfg = ( x, y, z ) =>{ console.log( x + y + z ) } gfg( 10, 20, 30 );>

Produzione
60>

Funzione freccia con parametri predefiniti

Javascript
const gfg = ( x, y, z = 30 ) =>{ console.log( x + ' ' + y + ' ' + z); } gfg(10, 20);>

Produzione
10 20 30>

Le funzioni freccia possono essere asincrone anteponendo all'espressione la parola chiave async.

async param =>espressione asincrona (param1, param2, ...paramN) => { istruzioni }>

Vantaggi delle funzioni freccia

  • Le funzioni freccia riducono la dimensione del codice.
  • L'istruzione return e le parentesi funzione sono facoltative per le funzioni a riga singola.
  • Aumenta la leggibilità del codice.
  • Le funzioni freccia forniscono un lessico a questa associazione. Significa che ereditano il valore di questo dall'ambito che li racchiude. Questa funzionalità può essere vantaggiosa quando si ha a che fare con ascoltatori di eventi o funzioni di callback in cui il valore può essere incerto.

Limitazioni delle funzioni delle frecce

  • Le funzioni freccia non hanno la proprietà prototipo.
  • Le funzioni freccia non possono essere utilizzate con la nuova parola chiave.
  • Le funzioni freccia non possono essere utilizzate come costruttori.
  • Queste funzioni sono anonime ed è difficile eseguire il debug del codice.
  • Le funzioni freccia non possono essere utilizzate come funzioni generatrici che utilizzano la parola chiave yield per restituire più valori nel tempo.

Browser supportati

  • Chrome 45 e versioni successive
  • Bordo 12 e superiori
  • Firefox 22 e versioni successive
  • Opera 32 e superiori
  • Safari 10 e versioni successive