Calcular el tiempo transcurrido Javascript
Javascript
Calcular el tiempo transcurrido
El método getTime devuelve el número de milisegundos transcurridos desde la medianoche del 1 de enero de 1970. Para cualquier fecha anterior a esa, devuelve un número negativo.
Puede usar el método getTime para establecer una hora inicial y final para calcular el tiempo transcurrido. Se puede utilizar para medir unidades pequeñas, como unos segundos, y unidades grandes, como días.
En el ejemplo siguiente se calcula el tiempo transcurrido en segundos. El método getTime obtiene el número de milisegundos desde la fecha cero.
1 2 3 4 5 6 7 |
var startTime = new Date('1/1/1990'); var startMsec = startTime.getMilliseconds(); startTime.setTime(5000000); var elapsed = (startTime.getTime() - startMsec) / 1000; document.write(elapsed); // Output: 5000 |
Para trabajar con unidades más controlables, puede dividir los milisegundos proporcionados por el método getTime por un número adecuado. Por ejemplo, para convertir los milisegundos en días, divida el número por 86.400.000 (1.000 milisegundos x 60 segundos x 60 minutos x 24 horas).
En el siguiente ejemplo se muestra el tiempo que ha transcurrido desde el primer día del año especificado. Se usan operaciones de división para calcular el tiempo transcurrido en días, horas, minutos y segundos. No tiene en cuenta el horario de verano.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
// asignar el valor de las unidades en milisegundos var msecPerMinute = 1000 * 60; var msecPerHour = msecPerMinute * 60; var msecPerDay = msecPerHour * 24; // asignar la fecha en milisegundos var date = new Date('6/15/1990'); var dateMsec = date.getTime(); // asignar la fecha el 1 de enero del a la media noche date.setMonth(0); date.setDate(1); date.setHours(0, 0, 0, 0); // Obtener la diferencia en milisegundos var interval = dateMsec - date.getTime(); // Calcular cuentos días contiene el intervalo. Substraer cuantos días //tiene el intervalo para determinar el sobrante var days = Math.floor(interval / msecPerDay ); interval = interval - (days * msecPerDay ); // Calcular las horas , minutos y segundos var hours = Math.floor(interval / msecPerHour ); interval = interval - (hours * msecPerHour ); var minutes = Math.floor(interval / msecPerMinute ); interval = interval - (minutes * msecPerMinute ); var seconds = Math.floor(interval / 1000 ); // Mostrar el resultado. document.write(days + " days, " + hours + " hours, " + minutes + " minutes, " + seconds + " seconds."); //Output: 164 días, 23 horas, 0 minutos, 0 segundos. |
1 Comment