JSFiddle - React, Tailwind, and code Playground
JavaScript
(function(){
var start = null;
var checkTicks = function(){
start = new Date(); // SETA start COM DATA CORRENTE
setTimeout(showDiff, 1000); // DEFINE FUNÇÃO A SER EXECUTADA APOS 1s
loop(); // CHAMADO DE LOOP QUE DEVE DEMORAR 5s
}
var loop = function(){
var stop = false;
while(!stop){
var current = new Date();
if(betweenDates(current, start) > 5){ // SO PARA APOS DIFF DE 5s
stop = true;
}
}
}
var showDiff = function(){
var current = new Date();
console.log(betweenDates(current, start)); // EXIBE DIFERENCA ENTRE start E current
}
checkTicks(); // INICIO O PROCESSO
})();
function betweenDates(d1, d2) {
return (d1.getTime() - d2.getTime()) / 1000;
}