Uporaba posredovanja funkcije kot parametra v JavaScriptu
Ustvarimo funkcijo, ki bo kot parameter sprejela polje, drugi parameter pa - funkcijo. Posredovana funkcija naj se uporabi za vsak element polja:
function test(arr, func) {
// vrnemo spremenjeno polje
}
Implementirajmo:
function test(arr, func) {
// Zaženemo zanko:
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]); // uporabimo funkcijo na vsakem elementu
}
return arr; // vrnemo spremenjeno polje
}
Uporabimo našo funkcijo na nekem polju:
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Pretvorimo polje števil v polje njihovih kvadratov:
let result = test(
[1, 2, 3],
function(num) {return num * num;}
);
console.log(result); // izpiše [1, 4, 9]
Oblikujmo klic naše funkcije bolj elegantno (tako je bolj sprejeto):
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Oblikujmo kodo bolj elegantno:
let result = test([1, 2, 3], function(num) {
return num * num;
});
console.log(result); // izpiše [1, 4, 9]
Ne gledajoč v mojo kodo implementirajte takšno
funkcijo test sami.
Pokličite ustvarjeno funkcijo test,
ki ji kot parameter posredujete polje s števili. Naredite
tako, da funkcija vrne polje s kubi
tih števil.