PDA

Ver la Versión Completa : Días entre de dos fechas ?


lucasarts_18
26-07-2007, 21:49:38
Hola qué tal, intento implementar una función que haga este cometido y he perdido la paciencia, alguien de ustedes podría decirme que estoy haciendo mal.


function diasEntreFechas(fechaAnterior,fechaPosterior,separador){

fecha1 = extraerFecha(fechaAnterior,'/');
fecha2 = extraerFecha(fechaPosterior,'/');

dia = fecha1[0];
mes = fecha1[1] - 1;
ano = fecha1[2];

anterior = new Date(ano,mes,dia,0,0,0);

dia = fecha1[0];
mes = fecha2[1] - 1;
ano = fecha2[2];

posterior = new Date(ano,mes,dia,0,0,0);

var un_dia = 24*60*60*1000;
//var un_mes = 1000*60*60*24*30;


dias = (posterior.getTime() - anterior.getTime() ) / un_dia;
dias = Math.floor(dias);


alert(dias);
//semanas = Math.floor(dias / 7);

}

Mil gracias.

Hasta Luego .-

lucasarts_18
26-07-2007, 22:49:53
Compañeros, he encontrado la solución, espero que a alguien le sea
de utilidad.


function diasEntreFechas(fecha1,fecha2) {

fecha1 = fecha1.split('/');
diaFecha1 = fecha1[0];
mesFecha1 = fecha1[1];
anoFecha1 = fecha1[2];
mesFecha1 = mesFecha1 - 1; // para js los meses del año son de 0 - 11, de ahi ese calculo.
diaFecha1 = diaFecha1;
var fechaAnterior = new Date(anoFecha1, mesFecha1, diaFecha1);

m_fecha2 = fecha2.split('/');
diaFecha2 = m_fecha2[0];
mesFecha2 = m_fecha2[1];
anoFecha2 = m_fecha2[2];
mesFecha2 = mesFecha2 - 1;


var fechaPosterior = new Date(anoFecha2, mesFecha2, diaFecha2);

var un_dia = 1000*3600*24;

dias = Math.ceil((fechaAnterior.getTime()- fechaPosterior.getTime())/(un_dia)) * -1;
alert(dias);

}



Hasta Luego .-