Anvendelse av funksjonsoverføring som parameter i JavaScript
La oss lage en funksjon som som parameter skal ta imot en array, og som andre parameter - en funksjon. Den overførte funksjonen skal anvendes på hvert element i arrayen:
javascriptfunction test(arr, func) {
// returner den modifiserte arrayen
}
La oss implementere:
javascriptfunction test(arr, func) {
// Starter løkken:
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]); // anvender funksjonen på hvert element
}
return arr; // returnerer den modifiserte arrayen
}
La oss anvende funksjonen vår på en array:
javascriptfunction test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Transformer arrayen med tall til en array med deres kvadrater:
let result = test(
[1, 2, 3],
function(num) {return num * num;}
);
console.log(result); // vil vise [1, 4, 9]
La oss gjøre kallet til funksjonen vår mer elegant (slik er det mer vanlig):
javascriptfunction test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Gjør koden mer elegant:
let result = test([1, 2, 3], function(num) {
return num * num;
});
console.log(result); // vil vise [1, 4, 9]
Задание 1
Uten å kikke på koden min, implementer en slik
funksjon test på egen hånd.
Задание 2
Kall funksjonen test du opprettet,
og send den en array med tall som parameter. Gjør
slik at funksjonen returnerer en array med kubene
av disse tallene.