var diferencia = function(){ var inicio = new Date(), //Fecha inicial fin = new Date("July 18, 2014 17:00:02"), //Fecha final difMiliSeg = fin.getTime() - inicio.getTime(), //Diferencia en milisegundos difSeg = difMiliSeg / 1000, //Diferencia en segundos difMin = 0, //Diferencia en minutos difHor = 0, //Diferencia en horas difDia = 0; //Diferencia en días while (difSeg > 59){ //Si hay más de 59 segundos de diferencia difSeg -= 60; //Le resto 60 segundos difMin++; //Y aumento 1 minuto } while (difMin > 59){ //Si hay más de 60 minutos de diferencia difMin -= 60; //Le resto 60 minutos difHor++; //Y aumento 1 hora } while (difHor > 23){ //Si hay más de 23 horas de diferencia difHor -= 24; //Le resto 24 horas difDia++; //Y aumento 1 día } document.body.innerHTML = "Fecha inicial: " + inicio.toLocaleString(); document.body.innerHTML += "<br />Fecha final: " + fin.toLocaleString(); document.body.innerHTML += "<br />Días: " + difDia; document.body.innerHTML += "<br />Horas: " + difHor; document.body.innerHTML += "<br />Minutos: " + difMin; document.body.innerHTML += "<br />Segundos: " + difSeg.toFixed(0); }; setInterval(diferencia, 1000);