Hallo!
Ich habe eine Javascript-Funktion (A), die wiederum eine andere Javascript-Funktion (B) benutzt.
In der Funktion A wird die Funktion B nun mehrmals hintereinander ausgeführt. In jedem Durchlauf von Funktion B wird eine (globale) Variable verändert die für die nächste Ausführung von Funktion B wichtig ist.
Eigentlich sollte das ja kein Problem sein, allerdings ist Funktion B sehr schwerfällig da sie Daten über eine API von einem anderem Server abruft. Es sieht für mich aber so aus als ob die Funktion A die Bs eins nach dem anderem aufruft ohne daß die vorhergehenden Bs schon abgeschlossen ist. Zumindest lässt mich das das loggen der Variable inner- und ausserhalb der Funktion B vermuten.
Kann so etws überhaupt sein? Und wenn ja, wie kann ich das Script dazu bringen erst fortzufahren, wenn die vorhergehende Funktion gänzlich abgeschlossen ist?
Im Prinzip läuft das so:
function B(){
....
console.log('inner'+variable);
....
}
function A(){
...
B();
console.log('outer'+variable);
B();
console.log('outer'+variable);
B();
console.log('outer'+variable);
...
}
In der Konsole stehen jetzt aber zuerst alle outer-Werte und dann alle inner-Werte.
Irgendeine Idee, oder mache ich gerade einen Denkfehler?
Vielen Dank!