JSFiddle - React, Tailwind, and code Playground

by mathew11

HTML

<a></a>

JavaScript

function myFunction(array){
    var r = $.Deferred();
    
    if(array.length == 0){
        r.resolve();
        return r;
    }
    
    var element = array.shift();
    

    
    
    timer = setTimeout(function(){
        $("a").text($("a").text()+ " " + element);
        var resolving = function(){
            r.resolve();
        }
        
        myFunction(array).done(resolving);
        
     }, 500);
   
    return r;
}

var myArray = ["Hi", "that's", "just", "a", "test"];
var alerting = function (){window.alert("finished!")};
myFunction(myArray).done(alerting);