Le arrow function sono una recente feature di JavaScript che ci permette di semplificare la scrittura delle funzioni anonime.
Data la seguente funzione:
'use strict';
const testFn = function() {
console.log('Hello world');
};
La arrow function equivalente sarà:
'use strict';
const testFn = () => {
console.log('Hello world');
};
La parola chiave function viene omessa e viene aggiunta la coppia di token => prima del corpo della funzione (arrow in inglese vuol dire appunto "freccia").
Gli argomenti passati a questo tipo di funzioni vengono sempre inseriti nelle parentesi tonde come per le funzioni anonime tradizionali. L'unica differenza è che se abbiamo un solo argomento le parentesi tonde possono essere omesse:
'use strict';
const testFn = str => {
console.log(str);
};
La parola chiave return è opzionale nel caso della valutazione di espressioni. Quindi:
'use strict';
const testFn = str => {
typeof str === 'string';
};
è equivalente a:
'use strict';
const testFn = str => {
return typeof str === 'string';
};