Función AMDOk

7 marzo 2019

Función para validar una fecha en formato AAAA/MM/DD (para validar fechas en otros formatos, por ejemplo ‘DD/MM/AAAA’ habría que hacer pequeñas modificaciones en el código):

function AMDOk(cad)
{
  if(cad.length!=10)
    return 0;

  var sep=cad.substr(4,1);
  if((sep!="/" && sep!="-") || sep!=cad.substr(7,1))
    return 0;

  var d=(cad.substr(8,2)*1);
  var m=(cad.substr(5,2)*1);
  var a=(cad.substr(0,4)*1);

  if(d<1 || d>31 || m<1 || m>12 || a<1000 || a>9999 ||
    (d>30 && (m==4 || m==6 || m==9 || m==11)) ||
    (m==2 && (d>29 || (d>28 && (a%4)!=0))))
    return 0;
  return 1;
}