Anvendelse af pilefunktioner i JavaScript
Pilefunktioner har en særlig fordel
som callbacks. Lad os se med et eksempel,
hvor meget koden forenkles i sådan et
tilfælde. Lad os for eksempel have følgende
funktion filter:
function filter(arr, callback) {
let res = [];
for (let elem of arr) {
if ( callback(elem) === true ) {
res.push(elem);
}
}
return res;
}
Lad os kalde denne funktion og give den en callback:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem % 2 === 0) {
return true;
} else {
return false;
}
});
Lad os nu forenkle vores funktion.
Lad os først slippe af med konstruktionen
if og skrive betingelsen simpelthen via
operatoren ===:
let result = filter([1, 2, 3, 4, 5], function(elem) {
return elem % 2 == 0;
});
Lad os nu erstatte den almindelige funktion med en pilefunktion:
let result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);
Følgende funktion med en callback er givet:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem > 0) {
return true;
} else {
return false;
}
});
Forenk callback'en ved hjælp af en pilefunktion.