Tach!
es ist nur ein Beispielcode der das Problem darstellen soll. Ziel ist es, Inhalte aus einer Datei in Variablen und Objekten zu speichern, um diese im Script weiter verarbeiten zu können.
Dein Problem, das wurde schon gesagt, ist ein reihenfolgenabhängiges. Wenn ein Vorgang das Ergebnis per Callback liefert, dann kannst du auf dieses Ergebnis immer erst nach der Ausführung des Callbacks zugreifen oder innerhalb beziehungsweise von ihm ausgehend.
Man kann das mit Promises lösen. Wenn die Inhalte bereits da sind, ist das Promise sofort erfüllt, wenn nicht, erfüllt es sich später. Da es (vermutlich) immer nur eine Ausführung der Daten geben soll, müsste es auch noch eine Factory geben, die diese eine Promise-Instanz ausliefert, wer auch immer sie anfragt.
Das bedeutet aber auch, dass man dazu grundlegendes Wissen im Umgang mit Promises aneignen muss.
dedlfix.