Εφαρμογή της μετάδοσης συναρτήσεων ως παραμέτρων στο JavaScript
Ας φτιάξουμε μια συνάρτηση που θα παίρνει ως παράμετρο έναν πίνακα, και ως δεύτερη παράμετρο - μια συνάρτηση. Η συνάρτηση που μεταδίδεται θα πρέπει να εφαρμόζεται σε κάθε στοιχείο του πίνακα:
function test(arr, func) {
// επιστρέφουμε τον τροποποιημένο πίνακα
}
Ας την υλοποιήσουμε:
function test(arr, func) {
// Ξεκινάμε τον βρόχο:
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]); // εφαρμόζουμε τη συνάρτηση σε κάθε στοιχείο
}
return arr; // επιστρέφουμε τον τροποποιημένο πίνακα
}
Ας εφαρμόσουμε τη συνάρτησή μας σε κάποιον πίνακα:
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Μετατρέπουμε τον πίνακα αριθμών σε πίνακα με τα τετράγωνά τους:
let result = test(
[1, 2, 3],
function(num) {return num * num;}
);
console.log(result); // θα εμφανίσει [1, 4, 9]
Ας διαμορφώσουμε την κλήση της συνάρτησής μας πιο κομψά (έτσι είναι πιο αποδεκτό):
function test(arr, func) {
for (let i = 0; i < arr.length; i++) {
arr[i] = func(arr[i]);
}
return arr;
}
// Διαμορφώνουμε τον κώδικα πιο κομψά:
let result = test([1, 2, 3], function(num) {
return num * num;
});
console.log(result); // θα εμφανίσει [1, 4, 9]
Χωρίς να κοιτάξετε τον κώδικά μου, υλοποιήστε μόνοι σας μια τέτοια
συνάρτηση test.
Καλέστε τη συνάρτηση test που δημιουργήσατε,
μεταβιβάζοντάς της ως παράμετρο έναν πίνακα με αριθμούς. Κάντε
έτσι ώστε η συνάρτηση να επιστρέψει έναν πίνακα με τους κύβους
αυτών των αριθμών.