JSFiddle - React, Tailwind, and code Playground
JavaScript
Function.prototype.async = function () {
setTimeout.bind(window, this, 0).apply(window, arguments);
};
function forEach(array, funct, callback) {
if (array.length)
funct.async(array[0], forEach.bind(null, array.slice(1), funct, callback));
else callback();
}
var a = [2, 3, 5];
forEach(a, function (element, next) {
alert(element);
next();
}, done);
alert(7);
function done() {
alert(a);
}