Imenovane funkcije-parametri u JavaScript-u

Funkcije koje se prosleđuju kao parametri, ne moraju nužno da budu anonimne.

Hajde da ih napravimo kao Function Declaration. Prvu funkciju ćemo nazvati get1, a drugu - get2:

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

Prosledimo u parametre funkcije test imena funkcija get1 i get2 (to jeste njihov izvorni kod, a ne rezultat):

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

test(get1, get2); // ispisaće 3

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

Prebacimo na Function Expression:

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

test(get1, get2); // ispisaće 3

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

Napravite funkciju test koja kao parametre prima 3 funkcije i vraća zbir rezultata prosleđenih funkcija.

Задание 2

Napravite 3 funkcije, deklarišući ih kao Function Declaration i dajući im imena func1, func2 i func3. Neka prva funkcija vraća 1, druga - 2, a treća - 3. Prosledite ove funkcije kao parametre funkciji test iz prethodnog zadatka.

Задание 3

Modifikujte prethodni zadatak tako da funkcije budu deklarisane kao Function Expression s istim imenima.