Parámetros de funciones pasadas en JavaScript

Supongamos que tenemos una función test que toma otra función como parámetro y muestra el resultado de esa función pasada en la consola:

javascriptfunction test(func) {
  console.log( func() );
}

Supongamos que la función pasada func toma un número como parámetro y hace algo con él. Pasémosle, por ejemplo, el número 3:

javascriptfunction test(func) {
  console.log( func(3) );
}

Ahora llamemos a la función test, pasándole como parámetro una función anónima. Esta función anónima tomará un número como parámetro y devolverá el cuadrado de ese número.

Como resultado de todo esto, nuestra construcción mostrará el cuadrado del número 3, es decir, 9:

javascript// Mostrará 9:
test(
  function(num) {
    return num * num;
  }
);

function test(func) {
  console.log(func(3));
}

Formateemos el código de manera más elegante:

javascript// Mostrará 9:
test(function(num) {
  return num * num;
});

function test(func) {
  console.log(func(3));
}
Задание 1

Copie el código de mi función test. Llame a esta función, pasándole como parámetro una función anónima que tomará un número como parámetro y devolverá su cubo.

Задание 2

Modifique su código para que la función pasada no sea anónima, sino que esté definida como una Function Declaration con el nombre func.

Задание 3

Convierta la función pasada a una Function Expression con el mismo nombre func.

Задание 4

Supongamos que la función pasada ahora recibe dos parámetros y devuelve su suma. Al llamar a la función pasada dentro de test pase a la función pasada el número 2 y el número 3. Muestre el resultado.