Как обойти cобытийную модель js?
Почитайте про обещания.
Можно использва "async", замечательно для таких ведей подходит.
Делаете массив с функциями и потом этот массив скармливается "asycn.parallel" или "async.serial", в зависимости от того хотите вы их последовательно или паралелльно выполнять.