Foros del Web » Programando para Internet » Javascript »

comparar fechas...

Estas en el tema de comparar fechas... en el foro de Javascript en Foros del Web. Que tal, hay algun modo rapido de conocer de una serie de variables que contienen una fecha(dd-mm-aaaa) cual es la mas reciente sin la necesidad ...
  #1 (permalink)  
Antiguo 19/09/2006, 18:58
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Pregunta comparar fechas...

Que tal, hay algun modo rapido de conocer de una serie de variables que contienen una fecha(dd-mm-aaaa) cual es la mas reciente sin la necesidad de comparar año mes y dia por separado???? De antemano muchas Gracias, digo, a mi se me ocurre solo hacerlo por separado pero pues siento que hay una manera mejor, solo que no se me ocurre, si me pueden hechar la mano se los agradecere!
  #2 (permalink)  
Antiguo 20/09/2006, 08:32
Avatar de diegopedro  
Fecha de Ingreso: agosto-2006
Ubicación: Santiago
Mensajes: 120
Antigüedad: 17 años, 9 meses
Puntos: 0
function Comparadosfechas(fechai,fechat)
{
var Diai, Mesi, Anyoi;
var Diat, Mest, Anyot;
var Dia_Mes_Mal = false;

Diai=fechai.substr(0,2);
Mesi=fechai.substr(3,2);
Anyoi=fechai.substr(6,4);

Diat=fechat.substr(0,2);
Mest=fechat.substr(3,2);
Anyot=fechat.substr(6,4);

if((Anyoi+Mesi+Diai)>(Anyot+Mest+Diat))
Dia_Mes_Mal = true;

return Dia_Mes_Mal;
}
  #3 (permalink)  
Antiguo 20/09/2006, 08:40
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola zyon

A ver si esto te sirve:
Código PHP:
fecha1='10/25/04';
fecha2='10/15/05';
f1=new Date(fecha1);
f2=new Date(fecha2);
if (
f1<f2alert("f1 es menor que f2"
Saludos,
  #4 (permalink)  
Antiguo 20/09/2006, 18:59
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Ok, gracias por su ayuda , me sirvio para mejorar unas cositas!
  #5 (permalink)  
Antiguo 21/09/2006, 16:00
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Que tal JavierB, tengo una duda, la solución que me diste solo funciona con ese formato? por que quise probarlo con "2006-04-27" y no me jalo...
__________________
Wow! No se que decir...
  #6 (permalink)  
Antiguo 21/09/2006, 19:16
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
las alternativas para date son pocas...

f1 = new Date("December 17, 1995 03:24:00")
f2 = new Date(95,11,17)
f3 = new Date(95,11,17,3,24,0)
  #7 (permalink)  
Antiguo 22/09/2006, 17:39
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
como una segunda opcion (porque la primera es la que ya te comentaron antes , utilizando el objeto Date) se podría solucionar con un poquito de maña:

Cita:
<html>
<head>
<script>
function ver(){
fecha1="2006-04-27";
fecha2="2006-03-28";
if(parseInt(fecha1.split("-").join(""))>parseInt(fecha2.split("-").join(""))){
alert("la fecha 1 es mayor que la 2\nfecha1:"+fecha1+"\nfecha2:"+fecha2);
}else{
alert("la fecha 2 es mayor que la 1\nfecha1:"+fecha1+"\nfecha2:"+fecha2);
}
}
</script></head>
<body>
<span onClick="ver()">ver</span>
</body>
</html>
es solo para graficar que siempre hay varias opciones para llegar a un resultado similar, aunque reitero que mas eficiente es utilizando el objeto Date.

saludos
__________________
by Capitán Buscapina
.
  #8 (permalink)  
Antiguo 22/09/2006, 18:08
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

A los objetos Date se los puede modificar... Si se crean sin parámetros devuelve un objeto con el "instante" que se creó, pero luego se le pueden modificar los datos...

tiempo = new Date();
tiempo.setMonth(8); // mes 8 (empieza por 0)
tiempo.setFullYear(2006); // año 2006
tiempo.setDate(22); // Día 22

Creo que las asignaciones están bien, será cuestión de hacer pruebas...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 23/09/2006, 18:10
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 7 meses
Puntos: 3
Ok, verificare lo que me comentan y ya les aviso, gracias!
__________________
Wow! No se que decir...
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 03:51.