@
TomaHawkk:
Pues no encuentro manera de hacer eso directamente, eso sí, indirectamente es fácil de lograr:
Código:
String.prototype.fechaDDMMAAAA = function() {
return this.replace(/^(\d{2})\/(\d{2})\/(\d{4})$/, "$2/$1/$3");
}
String.prototype.fechaMMDDAAAA = function() {
return this.replace(/^(\d{2})\/(\d{2})\/(\d{4})$/, "$2/$1/$3");
}
var fecha1="25/10/2004";
var fecha2="15/10/2005";
alert( fecha1+" --> "+fecha1.fechaDDMMAAAA() );
f1=new Date( fecha1.fechaMMDDAAAA() );
f2=new Date( fecha2.fechaMMDDAAAA() );
if (f1<f2) alert("f1 es menor que f2");
Sólo hay que implementar dos métodos de traducción.
@
KhaL:
Sí que "funciona" con dd/mm/aaaa, quiero decir que no da error. Pero la fecha que consigues es totalmente equivocada, ya que javascript "ajusta" la fecha que le has dado tú a la correcta. Quiero decir, que si le metes 31 de febrero automáticamente él ajustará la fecha a lo que se supone que tú querías decir, esto es:
No bisiesto: ...27, 28, 1, 2, 3... ----> Querías decir 3 de marzo
Bisiesto: ...27, 28, 29, 1, 2, 3... ----> Querías decir 2 de marzo
Ésto es muy útil para validar si una fecha es correcta, comprobamos lo que introduce el usuario y lo que javascript ajusta, así si son iguales es correcta y si no es incorrecta.
Un saludo.