JSFiddle - React, Tailwind, and code Playground

by HemalathaThanigaivel

HTML

<button id="button" type="button">Start</button>
<div id="a">
    <div></div>
</div>

JavaScript

function smartTimer(func, interval){
    var last = new Date() - interval,
        now,
        numMissed;
    
    (function iterate(){
        func();
        now = +new Date();
        numMissed = Math.round((now - last) / interval) - 1;

        while (numMissed--) { func(); }

        last = +new Date();
        setTimeout(iterate, interval);
    })();

}

(function(){
    var $a = $('#a'),
        $span = $a.find('div:last'),
        i = 0,
        j,
        str,
        dostuff = function(){
            str = '';
            j = i + 1;
            while(j--){
                str += j;
            }
            $span.text(str);
            i++;
            if (i === 10){
                i = 0;
                $a.append('<div />');
                $span = $a.find('div:last');
            }
        };
    
    $('#button').click(function(){
        smartTimer(dostuff, 100);
    });
})();