Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Diferencia entre fechas

Estas en el tema de Diferencia entre fechas en el foro de Javascript en Foros del Web. Tengo dos fechas cargadas por un usuario, con el formato dd/mm Y me gustaría saber su diferencia en días. var f_inicio = '29/05'; var f_fin ...
  #1 (permalink)  
Antiguo 30/05/2013, 12:07
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Diferencia entre fechas

Tengo dos fechas cargadas por un usuario, con el formato dd/mm

Y me gustaría saber su diferencia en días.

var f_inicio = '29/05';
var f_fin = '30/05';

var duracion = f_fin - f_inicio; //1

Estoy teniendo problemas con su conversion a Date para su posterior resta.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #2 (permalink)  
Antiguo 30/05/2013, 12:56
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Diferencia entre fechas

consulta un manual de js sobre las funciones para fecha y/o la clase Date

de igual forma veo que solo pides dia y mes, por lo que debes de agregar como mínimo el año actual, aunque manualmente puedes aplicar un algoritmo lógico para calcular la diferencia de días, lo cual es más código y sería reinventar la rueda
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 30/05/2013, 13:01
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: Diferencia entre fechas

Cita:
Iniciado por maycolalvarez Ver Mensaje
consulta un manual de js sobre las funciones para fecha y/o la clase Date

de igual forma veo que solo pides dia y mes, por lo que debes de agregar como mínimo el año actual, aunque manualmente puedes aplicar un algoritmo lógico para calcular la diferencia de días, lo cual es más código y sería reinventar la rueda
Con PHP no tendría problemas, pero me es necesario su calculo de parte del cliente en el change de los inputs.

Busque por todos lados y no encuentro ninguna función js que me ayude. Supongo que seguiré buscando pensé que tal vez alguien podría iluminarme aunque sea con el nombre de una función.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #4 (permalink)  
Antiguo 30/05/2013, 19:09
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Diferencia entre fechas

buenas...

en realidad en javascript no hay una función perse para hacer cálculos con fechas. tienes que convertirlo a objeto Date para entonces computar la diferencia y extraer los días transcurrido mediante la división de 24*60*60*1000. es por ello que @maycolalvarez sugiere agregar el año en curso a los datos ya obtenidos. no obstante, ¿que sucede si la fecha es 30/12 y 2/1? si le agregas el mismo año en curso a ambas fechas entonces obtienes una diferencia bien abismal. sugiero que también pidas al usuario agregar el año.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 31/05/2013, 06:51
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: Diferencia entre fechas

Lo solucione exigiendo el "Year" al usuario como me recomendarion, luego genero los 2 Dates los resto, y divido para que su resultado sea en Dias.

var date_inicio = new Date(i_year, i_month, i_day);
var date_fin = new Date(f_year, f_month, f_day);
var duracion_total = (date_fin - date_inicio)/1000/60/60/24;

Muchas gracias zerokilled, maycolalvarez
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives

Etiquetas: diferencia
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 09:05.