Есть такая функция:
window.getSomething = function(ids) {
ids.forEach(function(id, i) {
setTimeout((function() {
loadSomething(id);
}), 1000 * ++i);
});
};
Каждую итерацию отправляется ajax запрос (функция
loadSomething();
). Но проблема вот в чем: я хочу четкой поочередности, а с этим куском это не выходит. Если ответ задерживается, то
setTimeout
это не волнует и цикл идет дальше, тем самым отправляя все новые и новые запросы.
Например, у нас 10 итераций. То есть 10 ajax запросов. Как сделать так, чтобы следующее выполнении функции
loadSomething();
осуществлялось только после того, как предыдущий запрос вернул ответ (закончил работу)?