Meine Herren!
Ooh, ist .forEach() neu? Ich dachte sowas gibts nicht in JS. Ich kannte sonst bloß noch den Weg über for(i, i < array.length, i++).
Mit Semikolon als Trenner, aber ja. forEach ist noch nicht so alt, ist aber leicht nachrüstbar auch für ältere Browser.
Also dein Code macht in einem kleinen Test keine Schwierigkeiten.
Die Funktion befindet sich in einer while-Schleife einer MySQL-Abfrage und wird bei jedem Durchlauf aufgerufen und mit den entsprechenden Werten aus der DB gefüllt.
Huch, läuft dein JavaScript auf dem Server (Node.js o.Ä)? Sonst frage ich mich, wie du über eine MySQL-Ergebnis-Menge iterierst.
Über deine Software-Architektur hat molily ja schon ein paar Worte verloren, deshalb spar ich mir das.