Номгузоришудаи функсияҳои параметрӣ дар JavaScript

Функсияҳое, ки ҳамчун параметр интиқол дода мешаванд, заруран анонимӣ нестанд.

Биёед онҳоро ҳамчун E'лон кардани функсия (Function Declaration) созем. Якумро функсияро get1 номгузорӣ кунем, ва дуввумро - get2:

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

Дар параметрҳои функсияи test номҳои функсияҳои get1 ва get2-ро интиқол диҳем (яъне коди манбаии онҳо, на натиҷаи онҳо):

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

test(get1, get2); // 3 -ро хориҷ мекунад

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

Барои Eъфод кардани функсия (Function Expression) табдил диҳем:

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

test(get1, get2); // 3 -ро хориҷ мекунад

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

Функсияи test-ро созед, ки дар параметраш 3 функсияро қабул мекунад ва ҷамъи натиҷаҳои функсияҳои интиқолдодашударо бармегардонад.

Задание 2

3 функсияро созед, онҳоро ҳамчун E'лон кардани функсия (Function Declaration) эълон кунед ва ба онҳо номҳои func1, func2 ва func3-ро бидиҳед. Бигзор функсияи якум 1, дуввум - 2, ва сеюм - 3-ро баргардонад. Ин функсияҳоро ҳамчун параметр ба функсияи test аз вазифаи гузашта интиқол диҳед.

Задание 3

Вазифаи гузаштаро тавре тағйир диҳед, ки функсияҳо ҳамчун Eъфод кардани функсия (Function Expression) бо ҳамон номҳо эълон карда шаванд.