First-Class-Funktionen
First-Class-Funktionen
First-Class-Funktionen
- Erste Klasse Bürger
- Funktionen sind nur Werte
- Ein anderer Typ von Objekt
add oder increment als Variable speichern:
addEventListener():
return-Value zurückgeben, das kann oftmals sehr praktisch sein.
Weil Funktionen eben nur Objekte sind haben auch sie einige Methoden, beispielsweise die bind-, call - und apply-Methoden.
Higher-Order-Funktionen
Higher-Order-Funktionen
Higher-Order-Funktionen
- Erhält eine andere Funktion als Argument, gibt eine neue Funktion zurück oder beides
- Nur möglich, aufgrund von First-Class-Funktionen
addEventListener-Funktion ist eben genau diese Funktion eine Higher-Order-Funktion, da sie eine Callback-Funktion als Argument, hier greet, erhält.
Weiter können wir Funktionen haben, die Funktionen zurückgeben, z.B.:
Beispiele
transformer). Aber JavaScript nutzt sehr of in ihren eigenen Funktionen Callback-Funktionen, wie addEventListener oder forEach.
Vorteile
- Alle Funktionen machen genau das, was sie sagen und nicht mehr oder weniger
- Funktionen sind wiederverwendbar
- Es fügt eine Schicht an Abstraktion hinzu