JSFiddle - React, Tailwind, and code Playground

HTML

<h2>blah, blah, blah...WEEKEND!</h2>
<ul>
</ul>

JavaScript

var days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'];

function printW () {
	print("WEEKEND!");
}

Promise.all(days.map(print))
	.then(printW);

/******************************************************************
No need to change anything below this line
*******************************************************************/
function print (msg){
    function asyncPrint(msg){
        return new Promise(function(resolve, reject){
            randomAsync(function(){
                printToDOM(msg);
                resolve();
            });
        });
    }

    function printToDOM(msg){
        var li = document.createElement('li');
        li.innerHTML = msg;
        document.querySelector('ul').appendChild(li);
    }

    function randomAsync(callback){
        var timeout = Math.round(Math.random() * 2000);
        setTimeout(callback, timeout);
    }
    
    return asyncPrint(msg);   
}