So können wir z.B. die Funktion add oder increment als Variable speichern:
constadd= (a, b) => a + b;constcounter= { value:23,inc:function() { this.value++; }}
Ausserdem können wir mit First-Class-Funktionen Funktionen als Argumente für andere Funktionen übergeben, wie z.B. bei der Funktion addEventListener():
Erhält eine andere Funktion als Argument, gibt eine neue Funktion zurück oder beides
Nur möglich, aufgrund von First-Class-Funktionen
Im obigen Beispiel mit der 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
Wie wir sehen können wir unsere eigenen Funktionen erstellen, die Funktionen annehmen (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