Pojmenované funkce jako parametry v JavaScriptu

Funkce, které jsou předávány jako parametry, nemusí být nutně anonymní.

Udělejme je jako Function Declaration. První funkci pojmenujme get1 a druhou - get2:

javascriptfunction get1() {
  return 1;
}
function get2() {
  return 2;
}

Předáme do parametrů funkce test názvy funkcí get1 a get2 (tedy jejich zdrojový kód, nikoli výsledek):

javascriptfunction get1() {
  return 1;
}
function get2() {
  return 2;
}

test(get1, get2); // vypíše 3

function test(func1, func2) {
  console.log( func1() + func2() );
}

Přepišme na Function Expression:

javascriptlet get1 = function() {
  return 1;
}
let get2 = function() {
  return 2;
}

test(get1, get2); // vypíše 3

function test(func1, func2) {
  console.log( func1() + func2() );
}
Задание 1

Vytvořte funkci test, která jako parametry přijímá 3 funkce a vrací součet výsledků předaných funkcí.

Задание 2

Vytvořte 3 funkce, deklarujte je jako Function Declaration a dejte jim jména func1, func2 a func3. Nechť první funkce vrací 1, druhá - 2, a třetí - 3. Předejte tyto funkce jako parametry do funkce test z předchozího úkolu.

Задание 3

Upravte předchozí úkol tak, aby funkce byly deklarovány jako Function Expression se stejnými názvy.