Zastosowanie funkcji strzałkowych w JavaScript
Szczególną zaletą funkcji strzałkowych jest
ich zastosowanie jako callbacków. Spójrzmy na przykładzie,
jak bardzo upraszcza się kod w takim
przypadku. Załóżmy dla przykładu, że mamy następującą
funkcję filter:
function filter(arr, callback) {
let res = [];
for (let elem of arr) {
if ( callback(elem) === true ) {
res.push(elem);
}
}
return res;
}
Wywołajmy tę funkcję, przekazując jej callback:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem % 2 === 0) {
return true;
} else {
return false;
}
});
Uprośćmy teraz naszą funkcję.
Na początek pozbądźmy się konstrukcji
if i napiszmy warunek po prostu za pomocą
operatora ===:
let result = filter([1, 2, 3, 4, 5], function(elem) {
return elem % 2 == 0;
});
Zamieńmy teraz zwykłą funkcję na funkcję strzałkową:
let result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);
Dana jest następująca funkcja z callbackiem:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem > 0) {
return true;
} else {
return false;
}
});
Uprość callback za pomocą funkcji strzałkowej.