Anvendelse af funktionsoverførsel som parameter i JavaScript
Lad os lave en funktion, som som parameter vil tage et array, og som anden parameter - en funktion. Den overførte funktion skal anvendes på hvert element i arrayet:
function test(arr, func) {
// returner det modificerede array
}
Lad os implementere:
function test(arr, func) {
// Starter løkken:
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]); // anvender funktionen på hvert element
}
return arr; // returnerer det modificerede array
}
Lad os anvende vores funktion på et array:
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Omformer arrayet med tal til et array af deres kvadrater:
let result = test(
[1, 2, 3],
function(num) {return num * num;}
);
console.log(result); // udskriver [1, 4, 9]
Lad os gøre kaldet til vores funktion mere elegant (sådan er det mere almindeligt):
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Gør koden mere elegant:
let result = test([1, 2, 3], function(num) {
return num * num;
});
console.log(result); // udskriver [1, 4, 9]
Uden at kigge på min kode, implementer en sådan
funktion test selv.
Kald den funktion test, du har oprettet,
og overfølg et array med tal som parameter. Gør
det sådan, at funktionen returnerer et array med terninger
af disse tal.