JavaScript-Callback
- Vorherige Seite JS-Static
- Nächste Seite JS-Asynchron
"Ich werde später zurückrufen!"
Ein Callback (callback) ist eine Funktion, die als Parameter an eine andere Funktion übergeben wird
Diese Technik ermöglicht es einer Funktion, eine andere Funktion aufzurufen
Callback-Funktionen können nach Abschluss einer anderen Funktion ausgeführt werden
Funktionsserie
JavaScript-Funktionen werden in der Reihenfolge ausgeführt, in der sie aufgerufen werden, nicht in der Reihenfolge, in der sie definiert wurden.
Dieser Beispiel zeigt schließlich "Goodbye":
Beispiel
function myFirst() { myDisplayer("Hello"); } function mySecond() { myDisplayer("Goodbye"); } myFirst(); mySecond();
Dieser Beispiel zeigt schließlich "Hello":
Beispiel
function myFirst() { myDisplayer("Hello"); } function mySecond() { myDisplayer("Goodbye"); } mySecond(); myFirst();
Reihenfolge der Ausführung
Manchmal möchten Sie besser steuern, wann eine Funktion ausgeführt wird.
Angenommen, Sie möchten berechnen und das Ergebnis anzeigen.
myCalculator
,myDisplayer
“),um das Ergebnis anzuzeigen:”
Beispiel
function myDisplayer(some) { document.getElementById("demo").innerHTML = some; } function myCalculator(num1, num2) { let sum = num1 + num2; return sum; } let result = myCalculator(5, 5); myDisplayer(result);
myCalculator
,myDisplayer
):
Beispiel
function myDisplayer(some) { document.getElementById("demo").innerHTML = some; } function myCalculator(num1, num2) { let sum = num1 + num2; myDisplayer(sum); } myCalculator(5, 5);
Das Problem im ersten Beispiel ist, dass Sie zwei Funktionen aufrufen müssen, um das Ergebnis anzuzeigen.
Das Problem im zweiten Beispiel ist, dass Sie den Anzeigefunktion des Rechners nicht stoppen können.
Es ist an der Zeit, ein Callback einzuführen.
JavaScript-Callback
Ein Callback ist eine Funktion, die als Parameter an eine andere Funktion übergeben wird.
Mit dem Callback können Sie die Funktion des Rechners durch den Callback aufrufen (myCalculator
Beispiel
function myDisplayer(some) { document.getElementById("demo").innerHTML = some; } function myCalculator(num1, num2, myCallback) { let sum = num1 + num2; myCallback(sum); } myCalculator(5, 5, myDisplayer);
Im obigen Beispiel ist myDisplayer
ist der Name der Funktion.
wird als Parameter übergeben myCalculator()
.
Denken Sie daran, keine Klammern zu verwenden, wenn Sie eine Funktion als Parameter übergeben.
Richtig: myCalculator(5, 5, myDisplayer);
Fehler: myCalculator(5, 5, myDisplayer());
Wann sollte ein Callback verwendet werden?
Der obige Beispiel ist nicht sehr aufregend.
Sie sind vereinfacht, um Ihnen die Syntax der Callbacks zu erklären.
Die wahre Glanzzeit der Callbacks sind asynchrone Funktionen, bei denen eine Funktion auf eine andere wartet (z.B. auf das Laden einer Datei).
Das nächste Kapitel wird asynchrone Funktionen vorstellen.
- Vorherige Seite JS-Static
- Nächste Seite JS-Asynchron