Я новичок в программировании асинхронно. Я столкнулся с ситуацией, когда мне нужно выполнить 8 поисков в базе данных в цикле. Я не уверен, как это сделать - моя библиотека базы данных возвращает данные в функции обратного вызова, и я не могу продолжить работу с моим кодом, пока у меня не будет всех 8 строк, поэтому мне нужно остановить до тех пор, пока все 8 поисков не завершатся. *
Это то, что я сейчас себе представляю:
db.world.Queue.find(@user.kingdom.troops_queue).on 'success', (troops_queue) ->
db.world.Queue.find(@user.kingdom.tanks_queue).on 'success', (tanks_queue) ->
#etc etc
Это ужасно и грубо, конечно, но я не могу придумать, как свернуть его в цикл, который позволит моему коду приостанавливаться и продолжаться только после заполнения последнего элемента. Я изучал такие вещи, как функция .each () jQuery, но каково поведение этой функции? Продолжается ли код после того, как он немедленно продолжается, или он ожидает завершения цикла?