JavaScript - Corregir diferencias entre fechas

 
Vista:
Imágen de perfil de txema
Val: 242
Bronce
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Corregir diferencias entre fechas

Publicado por txema (23 intervenciones) el 17/08/2018 14:25:03
Mi consulta viene de la mano de la diferencia entre dos fechas dadas.

Dicha diferencia la tomo desde timestamp (milisegundos a partir del 1 de Enero de 1970)
1
2
3
4
5
6
7
8
9
10
11
var hoy = new Date('2018-08-17');
var date = new Date('2017-08-18');
 
var dif_aino = Math.floor(( hoy - date) / 31536000000);
// 1000 * 60 * 60 * 24 * 365 = 31536000000
var dif_mes = Math.floor((( hoy - date) % 31536000000) / 2592000000);
// 1000 * 60 * 60 * 24 * 30 = 2592000000
var dif_dia = Math.floor(((( hoy - date) % 31536000000) % 2592000000) / 86400000);
// 1000 * 60 * 60 * 24 = 86400000
document.write('La diferencia entre fechas es de '+ dif_aino + ' Años, ' + dif_mes + ' Meses, '+ dif_dia + ' Días');
// La diferencia entre fechas es de 0 Años, 12 Meses, 3 Días 

Ello hace que tenga un desfase de
- 1 día por cada año bisiesto (si estoy calculando la edad de una persona que tiene 40 años acumulña diez días)
- 5 días por cada año natural (ver ejemplo donde a falta de un día tengo 12 meses y 4 días)

Conozco la librería momentjs pero ..

¿Podría subsanar este error sin acudir a dicha librería?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder