Foros del Web » Programando para Internet » Javascript »

Diferencia de meses entre dos Fechas

Estas en el tema de Diferencia de meses entre dos Fechas en el foro de Javascript en Foros del Web. Saludos amigos del foro, quisiera saber ¿cómo puedo hacer para comparar dos fechas que vienen de dos textbox y sacar la diferencia de meses entre ...
  #1 (permalink)  
Antiguo 02/10/2007, 17:05
 
Fecha de Ingreso: diciembre-2006
Ubicación: Tunja
Mensajes: 177
Antigüedad: 17 años, 4 meses
Puntos: 2
Diferencia de meses entre dos Fechas

Saludos amigos del foro, quisiera saber ¿cómo puedo hacer para comparar dos fechas que vienen de dos textbox y sacar la diferencia de meses entre una y otra?. Por ejemplo 2007/02/03 y 2007/06/03, la diferencia sería de 4 meses. El formato de fecha es ese.

De antemano gracias.
  #2 (permalink)  
Antiguo 03/10/2007, 03:15
 
Fecha de Ingreso: junio-2004
Mensajes: 621
Antigüedad: 19 años, 11 meses
Puntos: 25
Re: Diferencia de meses entre dos Fechas

Para calcular la diferencia en meses, calculamos el número de meses desde el momento 0. Para ello multiplicamos el por 12 y le sumamos el mes en el que estamos.

Esta operación da dos cifras resultantes. Si sustraemos la segunda de la primera, obtenemos el número de meses que hay entre las dos.

Sólo hay una correción a esto, y es que el día del mes de la segunda fecha sea menor que el día del mes de la primera. Eso querría decir que aún no se ha cumplido el mes, y por tanto hay que restar 1.

Espero que te haya servido de ayuda.

Código:
  f1 = "2007/02/03";
  f2 = "2007/06/04";
  
  aF1 = f1.split("/");
  aF2 = f2.split("/");
  
  numMeses = aF2[0]*12 + aF2[1] - (aF1[0]*12 + aF1[1]);
  if (aF2[2]<aF1[2]){
    numMeses = numMeses - 1;
  }
  alert(numMeses);
Un cordial saludo de,
eContento
__________________
eContento
- Mis artículos y tutoriales
- Mis jsfiddles
  #3 (permalink)  
Antiguo 03/10/2007, 13:09
 
Fecha de Ingreso: diciembre-2006
Ubicación: Tunja
Mensajes: 177
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Diferencia de meses entre dos Fechas

Gracias, hombre me ha servido muchísimo, solo tengo un problema y es que cuando son fechas de dos años diferentes sale encadenado. por ejemplo 2007/02/03 y 2008/12/04 sale 1210 como resultado.

Igualmente gracias.
  #4 (permalink)  
Antiguo 03/10/2007, 13:15
 
Fecha de Ingreso: junio-2004
Mensajes: 621
Antigüedad: 19 años, 11 meses
Puntos: 25
Re: Diferencia de meses entre dos Fechas

Cita:
Iniciado por rynkydynky Ver Mensaje
Gracias, hombre me ha servido muchísimo
De nada, hombre. No es necesario queme lo agradezcas. Ya sabes, para eso están los puntos de reputación, jeje...

Cita:
Iniciado por rynkydynky Ver Mensaje
...solo tengo un problema y es que cuando son fechas de dos años diferentes sale encadenado. por ejemplo 2007/02/03 y 2008/12/04 sale 1210 como resultado...
Bien, eso pasa porque el mes es considerado como un string y los concatena.

Un truco para que el + sea operación matemática y no concatenación, es que a los strings les restes 1, así se convierten en número, se puedan sumar sin problema, y luego les añades el 1.

Así sumas números en lugar de concatenar strings

Un saludo
__________________
eContento
- Mis artículos y tutoriales
- Mis jsfiddles
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:20.