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)
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
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


0