Anvendelse av pilfunksjoner i JavaScript
Pilfunksjoner har en spesiell fordel
som callbacks. La oss se med et eksempel
hvor mye enklere koden blir i et slikt
tilfelle. La oss for eksempel ha følgende
funksjon filter:
function filter(arr, callback) {
let res = [];
for (let elem of arr) {
if ( callback(elem) === true ) {
res.push(elem);
}
}
return res;
}
La oss kalle denne funksjonen og sende den en callback:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem % 2 === 0) {
return true;
} else {
return false;
}
});
La oss nå forenkle funksjonen vår.
La oss først bli kvitt if-konstruksjonen
og skrive betingelsen rett og slett gjennom
operatoren ===:
let result = filter([1, 2, 3, 4, 5], function(elem) {
return elem % 2 == 0;
});
La oss nå erstatte den vanlige funksjonen med en pilfunksjon:
let result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);
Følgende funksjon med callback er gitt:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem > 0) {
return true;
} else {
return false;
}
});
Forenkl callbacken ved hjelp av en pilfunksjon.