JavaScript funkcijā nodoto funkciju parametri

Pieņemsim, ka mums ir funkcija test, kas parametru pieņem citu funkciju un konsolē izvada šīs nodotās funkcijas darbības rezultātu:

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

Pieņemsim, ka nodotā funkcija func parametru pieņem skaitli un kaut ko ar to dara. Padodsim tai, piemēram, skaitli 3:

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

Tagad izsauksim funkciju test, padot tajā parametru kā anonīmu funkciju. Šī anonīmā funkcija parametru pieņems skaitli un atgriezīs šī skaitļa kvadrātu.

Visas šīs konstrukcijas rezultātā tiks izvadīts skaitļa 3 kvadrāts, tas ir 9:

javascript// Izvadīs 9:
test(
  function(num) {
    return num * num;
  }
);

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

Formatēsim kodu elegantāk:

javascript// Izvadīs 9:
test(function(num) {
  return num * num;
});

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

Nokopējiet manas funkcijas test kodu. Izsauciet šo funkciju, padodot tai parametru kā anonīmu funkciju, kas parametru pieņems skaitli un atgriezīs tā kubu.

Задание 2

Pārveidojiet savu kodu tā, lai nodotā funkcija nebūtu anonīma, bet tiktu definēta kā Function Declaration ar nosaukumu func.

Задание 3

Pārveidojiet nodoto funkciju uz Function Expression ar to pašu nosaukumu func.

Задание 4

Pieņemsim, ka nodotā funkcija tagad pieņem divus parametrus un atgriež to summu. Izsaucot nodoto funkciju test iekšienē, padodiet nodotajā funkcijā skaitli 2 un skaitli 3. Izvadiet rezultātu.