Funkcijos perdavimo kaip parametro panaudojimas JavaScript

Sukurkime funkciją, kuri pirmu parametru priims masyvą, o antru parametru - funkciją. Perduota funkcija turės būti pritaikyta kiekvienam masyvo elementui:

javascriptfunction test(arr, func) {
  // grąžinsime pakeistą masyvą
}

Implementuokime:

javascriptfunction test(arr, func) {
  // Paleidžiame ciklą:
  for (let i = 0; i < arr.length; i++) {
    arr[i] = func(arr[i]); // pritaikome funkciją kiekvienam elementui
  }
  
  return arr; // grąžiname pakeistą masyvą
}

Pritaikykime mūsų funkciją kokiam nors masyvui:

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

// Paverčiame skaičių masyvą į jų kvadratų masyvą:
let result = test(
  [1, 2, 3],
  function(num) {return num * num;}
);

console.log(result); // išvestų [1, 4, 9]

Suformuokime mūsų funkcijos iškvietimą elegantiškiau (taip yra labiau priimta):

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

// Elegantiškiau suformuojame kodą:
let result = test([1, 2, 3], function(num) {
  return num * num;
});

console.log(result); // išvestų [1, 4, 9]
Задание 1

Nežiūrėdami į mano kodą, patys implementuokite tokią pačią funkciją test.

Задание 2

Iškvieskite sukurtą funkciją test, perduodant jai parametrą masyvą su skaičiais. Padarykite tai, kad funkcija grąžintų masyvą su šių skaičių kubais.