Arvu edastamine parameetrina JavaScriptis

Ärgem nüüd olgu number, millega midagi teeb edastatav funktsioon, kõvasti salvestatud test sees, vaid edastame selle esimese parameetrina:

javascriptfunction test(num, func) { // esimese parameetrina tuleb number
  console.log(func(num));
}

Kasutame oma funktsiooni:

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

// Väljastab 4:
test(2, function(num) {
  return num * num;
});

Meie konstruktsiooni mugavus: meil on üks funktsioon test, mis parameetrina võtab vastu numbri. Kuid see, mis numbriga juhtub, ei ole kõvasti kooditud funktsiooni test sisse.

Me võime näiteks funktsiooni test teise parameetrina edastada funktsiooni, mis tõstab numbri ruutu, või näiteks funktsiooni, mis tõstab kuupi:

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

// Leiame arvu ruudu:
test(2, function(num) {
  return num * num; // tagastab ruudu
});

// Leiame arvu kuubi:
test(2, function(num) {
  return num * num * num; // tagastab kuubi
});
Задание 1

Olgu funktsioon test, mille esimene parameeter võtab vastu numbri, ning teine ja kolmas parameeter - funktsioonid, mis samuti parameetrina võtavad vastu numbreid. Olgu funktsioon test, mis tagastab edastatud funktsioonide tulemuste summa:

javascriptfunction test(num, func1, func2) {
  return func1(num) + func2(num);
}

Kutsuge funktsioon test esimese parameetrina edastades arvu 3, teise parameetrina funktsiooni, mis tõstab arvu ruutu, ja kolmandana - funktsiooni, mis tõstab arvu kuupi. Kuvage tulemus konsoolis.