Answer the question
In order to leave comments, you need to log in
How in node.js to force the loop (for loop) to be executed only after the completion of the previous step?
Доброго дня.
Была идея написать свой API к сайтам, которые этого не предусматривают...
Для этого хотел использовать cheerio, но столкнулся с проблемой:
При переборе страниц циклом "For" и сохранением результата программа начинает все ступени цикла for выполнять одновременно, что приводит к вылету приложения. Подскажите, чем дополнить цикл For для выполнения ступеней поочередно?
Answer the question
In order to leave comments, you need to log in
Очевидно, раз у вас for вдруг начинает работать параллельно, значит внутри что-то асинхронное. Следовательно, вам нужно посмотрить цепочку промисов:
let chain = Promise.resolve();
for (let i = 0; i < 10; i++) {
chain = chain.then(myAsyncFunction);
}
chain.then(() => {console.log('all done')});
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question