Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Node.js für ASP.NET-Entwickler

Der JavaScript Call Stack

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Den Call Stack kann man als eine Art To-do-Liste betrachten, die immer von oben nach unten bearbeitet werden muss.

Transkript

Um Node.js noch besser verstehen zu können, was da so alles im Hintergrund passiert, müssen wir natürlich auch verstehen, wie die JavaScript-Architektur in dem Bereich "Call Stack" aussieht. Und zwar sehen wir auf der rechten Seite unseren JavaScript-Code, der dann eben von oben nach unten bearbeitet wird, und die Ausgabe die erscheint direkt untendrunter, und auf der linken Seite sehen wir dann unseren "Call Stack". Und unser "Call Stack", müssen wir uns vorstellen, ist eine Art "ToDo"-Liste, und die wird eben jeder Zeit befüllt, und die muss immer von oben nach unten bearbeitet werden. Sehen wir uns das doch einmal zur Laufzeit an. Das heißt, unsere JavaScript-Funktion wäre jetzt, zum Beispiel, allgemein in einer "main"-Funktion, die dann ausgeführt wird, und dann wird der Code auch schon von oben nach unten bearbeitet. Ganz am Schluss gibt es dann die "printSquare"-Funktion. Diese ruft direkt die Funktion darüber auf mit dem Wert "4". Das heißt, in dem Fall wird auf unserer "ToDo"-Liste sofort "printSquare" mitaufgenommen. Und da ja der "Call Stack" immer schön abgearbeitet werden muss, von oben nach unten, wird jetzt sofort "printSquare" bearbeitet. Das heißt, was haben wir dann im "printSquare"? Da wird eine Variable erzeugt mit "squared" und dann wird die "square"-Function aufgerufen. Das bedeutet, der "Call Stack" wächst schon wieder. Das heißt, als nächste Aufgabe kommt erst mal "square". Und da er ja von oben nach unten erst alles abarbeiten muss, folgt sofort dann eben der "square"-Aufruf. Innerhalb von "square" gibt es dann einen "multiply"-Function-Aufruf. Das heißt, der "Call Stack" wächst schon wieder um eine weitere Funktion. Da er ja aber von oben nach unten wirklich alles durchmachen muss, arbeitet er jetzt eben die "multiply"-Funktion fertig. Da wird nur ein Wert mit einem anderen Wert berechnet, den er direkt wieder zurückgibt. In dem Fall wäre dann die Arbeit der "multiply"-Funktion fertig, und im "Call Stack" wird dann deren Abarbeitung als "Erledigt" gestempelt. Somit haben wir jetzt nur noch diese drei Funktionen. Das heißt, wir sind dann wieder in der "square"-Funktion. Hier wird dann auch der berechnete Wert wieder zurückgegeben, und somit wäre "square" auch als "Erledigt" abgehakt und somit erfolgt dann wieder die weitere Abarbeitung vom "printSquare", wo dann nichts anderes passiert, dass ein "console.log" aufgerufen wird. Auch "console.log" ist ja eine eigene Function. Das heißt, auch hier wird dann der "Call Stack" in kurze Zeit gefüllt. Es wird ein Ergebnis auf dem Bildschirm ausgegeben, und in dem Fall war dann die komplette Arbeit vom "printSquare" erledigt, und in dem Fall dann auch von der ganzen "main"-Funktion. So funktioniert exakt der JavaScript-"Call Stack".

Node.js für ASP.NET-Entwickler

Sehen Sie, wie Sie den Umstieg auf auf native JavaScript-Entiwcklung mit Node.js erfolgreich meistern.

2 Std. 52 min (31 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Exklusiv für Abo-Kunden
Erscheinungsdatum:15.05.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!