Εφαρμογή της μετάδοσης συναρτήσεων ως παραμέτρων στο JavaScript

Ας φτιάξουμε μια συνάρτηση που θα παίρνει ως παράμετρο έναν πίνακα, και ως δεύτερη παράμετρο - μια συνάρτηση. Η συνάρτηση που μεταδίδεται θα πρέπει να εφαρμόζεται σε κάθε στοιχείο του πίνακα:

javascriptfunction test(arr, func) {
  // επιστρέφουμε τον τροποποιημένο πίνακα
}

Ας την υλοποιήσουμε:

javascriptfunction test(arr, func) {
  // Ξεκινάμε τον βρόχο:
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]); // εφαρμόζουμε τη συνάρτηση σε κάθε στοιχείο
  }
  
  return arr; // επιστρέφουμε τον τροποποιημένο πίνακα
}

Ας εφαρμόσουμε τη συνάρτησή μας σε κάποιον πίνακα:

javascriptfunction 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]

Ας διαμορφώσουμε την κλήση της συνάρτησής μας πιο κομψά (έτσι είναι πιο αποδεκτό):

javascriptfunction 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]
Задание 1

Χωρίς να κοιτάξετε τον κώδικά μου, υλοποιήστε μόνοι σας μια τέτοια συνάρτηση test.

Задание 2

Καλέστε τη συνάρτηση test που δημιουργήσατε, μεταβιβάζοντάς της ως παράμετρο έναν πίνακα με αριθμούς. Κάντε έτσι ώστε η συνάρτηση να επιστρέψει έναν πίνακα με τους κύβους αυτών των αριθμών.