Aplikácia predania funkcie parametrom v JavaScripte

Vytvorme funkciu, ktorá ako parameter bude prijímať pole, a druhým parametrom - funkciu. Predaná funkcia by mala byť aplikovaná na každý prvok poľa:

javascriptfunction test(arr, func) {
  // vrátime zmenené pole
}

Realizujme:

javascriptfunction test(arr, func) {
  // Spustíme cyklus:
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]); // aplikujeme funkciu na každý prvok
  }
  
  return arr; // vrátime zmenené pole
}

Aplikujme našu funkciu na nejaké pole:

javascriptfunction test(arr, func) {
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]);
  }
  
  return arr;
}

// Transformujeme pole čísel na pole ich štvorcov:
let result = test(
  [1, 2, 3],
  function(num) {return num * num;}
);

console.log(result); // vypíše [1, 4, 9]

Formálme volanie našej funkcie elegantnejšie (tak je viac akceptované):

javascriptfunction test(arr, func) {
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]);
  }
  
  return arr;
}

// Formálme kód elegantnejšie:
let result = test([1, 2, 3], function(num) {
  return num * num;
});

console.log(result); // vypíše [1, 4, 9]
Задание 1

Bez nahliadania do môjho kódu realizujte takú istú funkciu test samostatne.

Задание 2

Zavolajte vytvorenú funkciu test, pričom jej ako parameter predajte pole s číslami. Uistite sa, že funkcia vráti pole s kockami týchto čísel.