JSFiddle - React, Tailwind, and code Playground
JavaScript
var asyncLoop = function(o){
var i=-1,
length = o.length;
var loop = function(){
i++;
if(i==length){o.callback(); return;}
o.functionToLoop(loop, i);
}
loop();//init
}
asyncLoop({
length : 5,
functionToLoop : function(loop, i){
setTimeout(function(){
document.write('Iteration ' + i + ' <br>');
loop();
},1000);
},
callback : function(){
document.write('All done!');
}
});