Egy programnyelvnek Elsőrendű függvényei vannak, ha a nyelv függvényeit úgy kezeljük mint a többi változót. Egy ilyen nyelveben függvényeket adhatunk meg más függvények paramátereként, függvények más függvényeket adhatnak vissza és váltózókhoz is hozzárendelhetjük őket.
Példa | Függvény hozzárendelése változóhoz
JavaScript
const foo = function() {
console.log("foobar");
}
// Meghívás a változóra való hivatkozással
foo();
Egy Névtelen függvényt
rendeltünk egy Váltózóhoz
, ezután a változó segítségével meghívtuk a függvényt úgy, hogy zárójelet tettünk ()
a változónév végére.
Ha a függvény el is lenne nevezve, akkor is használhatnánk a változót a meghívására. Az elnevezés segítségünkre lehet a hibakeresésé során, de nem érinti a függvény meghívási módját.
Példa | Függvény átadása argumentumként
JavaScript
function koszones() {
return "Helló, ";
}
function udvozlet(koszont, nev) {
console.log(koszont() + nev);
}
// `koszones` átadása argumentumként az `udvozlet` függénynek
udvozlet(koszones, "JavaScript!");
A koszones()
függvényt adjuk át az udvozlet()
függvény argumentumaként, ami magyarázatot ad arra, hogy hogyan tudjuk a függényeket érték
ként kezelni.
A függvényt, aminek egy másik függvényt adunk át argumentumként, Visszahívó Függvénynek nevezzük. koszones
egy visszahívó függvény.
Példa | Függvény visszatérítése
JavaScript
function koszones() {
return function() {
console.log("Helló!");
}
}
Ebben a példában egy függvényt kell visszatérítenünk egy másik függvényből - Azért tudjuk ezt megtenni, mert a JavaScript a függvényeket érték
ként kezeli.
Azt a függvényt, amely egy másik függnény térít vissza, Felsőbbrendű Függvénynek nevezzük.
Visszatérve a példánkra; most a koszones
függvényt kell meghívnunk, amit Névtelen Függvény
ként kaptunk vissza. Ez kétféle módon lehetséges:
1- Változó használata
const koszones = function() {
return function() {
console.log("Helló!");
}
}
const fuggvenyem = koszones();
fuggvenyem();
Így megkapjuk a Helló!
üzenetet.
Változót kell használnunk. Ha koszones
t közvetlenül hívtuk volna meg, a függvényt adta volna vissza anélkül, hogy meghívta volna a visszatérített függvényt.
2- Dupla zárójel használata
function koszones() {
return function() {
console.log("Helló!");
}
}
koszones()();
Dupla zárojelet ()()
használunk, hogy meghívjuk a visszatérített függvényt.
Tudjon meg többet
Általános Ismeretek
- Elsőrendű függvények a Wikipédián