442 Kapitel 10
Funktionen erster Klasse
Haben wir schon gesagt, dass Funktionen
in JavaScript als erstklassig gelten?
Wenn Sie vor JavaScript mit einer eher traditionellen Programmiersprache
gearbeitet haben, stellen Sie sich Funktionen vermutlich eher als, na ja, eben
Funktionen vor. Sie können sie deklarieren und aufrufen, aber wenn Sie nichts
davon tun, hängen sie nur faul herum.
Jetzt wissen Sie aber, dass Funktionen in JavaScript Werte sind – Werte, die
Variablen zugewiesen werden können. Und Sie wissen, dass wir mit Werten wie
Zahlen, Booleschen Werten, Strings und sogar Objekten alle möglichen Dinge
anstellen können. Wir können sie an Funktionen übergeben, sie aus Funktionen
zurückgeben und sie in Objekten oder Arrays speichern.
Informatiker haben einen eigenen Begriff dafür. Sie nennen diese Werte Werte
erster Klasse. Hier ein Überblick über die Fähigkeiten dieser erstklassigen Werte:
Den Wert einer Variablen zuweisen (oder in einer
Datenstruktur wie einem Array oder Objekt speichern).
Den Wert an eine Funktion übergeben.
Den Wert aus einer Funktion zurückgeben.
Wissen Sie was? Diese Dinge können Sie auch mit Funktionen machen.
Tatsächlich können Sie mit Funktionen alles tun, was in JavaScript auch
mit anderen Werten möglich ist. Neben all diesen Werten, die Sie schon
kennen (Zahlen, Strings, Boolesche Werte, Objekte), können Sie sich
Funktionen einfach als Werte erster Klasse vorstellen.
Hier eine etwas formellere Definition von »erstklassig«:
Erste Klasse: Eine Funktion, die in einer Programmier-
sprache wie jeder andere Wert behandelt werden kann,
inklusive der Zuweisung zu einer Variablen, der Überga-
be als Argument und der Rückgabe aus einer Funktion.
Wir werden sehen, dass JavaScript-Funktionen leicht als Werte
erster Klasse angesehen werden können. Wir wollen uns ein wenig
damit beschäftigen, was es für eine Funktion in verschiedenen
Situationen bedeutet, erstklassig zu sein. Zuvor ein kleiner Rat:
Betrachten Sie Funktionen nicht als etwas Besonderes oder
Unterschiedliches im Vergleich zu anderen Werten. Für den Rest
dieses Kapitels wollen wir Ihnen zeigen, warum das so ist.
Wir haben immer gedacht, »VIP-
Zugang-zu-allen-Bereichen« sei
der bessere Name, aber auf uns
hört ja keiner. Also bleiben wir
bei »Erste Klasse«.

Get JavaScript-Programmierung von Kopf bis Fuß now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.