Rodyklinės funkcijos panaudojimas JavaScript
Rodyklinės funkcijos turi ypatingą pranašumą
kaip atgalinio ryšio (callback) funkcijos. Pažiūrėkime
pavyzdžiu, kiek supaprastėja kodas tokiu
atveju. Tarkime, pavyzdžiui, turime šią
funkciją filter:
function filter(arr, callback) {
let res = [];
for (let elem of arr) {
if ( callback(elem) === true ) {
res.push(elem);
}
}
return res;
}
Iškvieskime šią funkciją, perduodami jai atgalinio ryšio funkciją:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem % 2 === 0) {
return true;
} else {
return false;
}
});
Dabar supaprastinkime mūsų funkciją.
Pirmiausia atsikratykime konstrukcijos
if ir parašykime sąlygą tiesiog per
operatorių ===:
let result = filter([1, 2, 3, 4, 5], function(elem) {
return elem % 2 == 0;
});
Dabar pakeiskime įprastą funkciją rodykline funkcija:
let result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);
Duota ši funkcija su atgalinio ryšio funkcija:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem > 0) {
return true;
} else {
return false;
}
});
Supaprastinkite atgalinio ryšio funkciją naudodami rodyklinę funkciją.