try:<script>
function d(a,b){
function x(s){ return Date.parse(s.replace(/-/g,'/'));}
return x(a)>x(b);
}
alert(d("2003-3-3","2003-3-4"));
</script>

解决方案 »

  1.   

    /********************************************************************************
    *   FUNCTION:       Compare Date! Which is the latest!
    *   PARAMETERS:     lessDate,moreDate AS String
    *   CALLS:          isDate,isBetween
    *   RETURNS:        TRUE if lessDate<moreDate
    *********************************************************************************/
    function isComdate (lessDate , moreDate)
    {
    if (!isDate(lessDate)) { return(false);}
    if (!isDate(moreDate)) { return(false);}
    var less1st = lessDate.indexOf('-');
    var less2nd = lessDate.lastIndexOf('-');
    var more1st = moreDate.indexOf('-');
    var more2nd = moreDate.lastIndexOf('-');
    var lessy = lessDate.substring(0,less1st);
    var lessm = lessDate.substring(less1st+1,less2nd);
    var lessd = lessDate.substring(less2nd+1,lessDate.length);
    var morey = moreDate.substring(0,more1st);
    var morem = moreDate.substring(more1st+1,more2nd);
    var mored = moreDate.substring(more2nd+1,moreDate.length);
    var Date1 = new Date(lessy,lessm,lessd); 
    var Date2 = new Date(morey,morem,mored); 
    if (Date1>Date2) { return(false);}
     return(true); 

    }
      

  2.   

    /*********************************************************************************
    * FUNCTION: isBetween
    * PARAMETERS: val AS any value
    * lo AS Lower limit to check
    * hi AS Higher limit to check
    * CALLS: NOTHING
    * RETURNS: TRUE if val is between lo and hi both inclusive, otherwise false.
    **********************************************************************************/
    function isBetween (val, lo, hi) {
    if ((val < lo) || (val > hi)) { return(false); }
    else { return(true); }
    }/*********************************************************************************
    * FUNCTION: isDate checks a valid date
    * PARAMETERS: theStr AS String
    * CALLS: isBetween, isInt
    * RETURNS: TRUE if theStr is a valid date otherwise false.
    **********************************************************************************/
    function isDate (theStr) {
    var the1st = theStr.indexOf('-');
    var the2nd = theStr.lastIndexOf('-');

    if (the1st == the2nd) { return(false); }
    else {
    var y = theStr.substring(0,the1st);
    var m = theStr.substring(the1st+1,the2nd);
    var d = theStr.substring(the2nd+1,theStr.length);
    var maxDays = 31;

    if (isInt(m)==false || isInt(d)==false || isInt(y)==false) {
    return(false); }
    else if (y.length < 4) { return(false); }
    else if (!isBetween (m, 1, 12)) { return(false); }
    else if (m==4 || m==6 || m==9 || m==11) maxDays = 30;
    else if (m==2) {
    if (y % 4 > 0) maxDays = 28;
    else if (y % 100 == 0 && y % 400 > 0) maxDays = 28;
                else maxDays = 29;
    }
    if (isBetween(d, 1, maxDays) == false) { return(false); }
    else { return(true); }
    }
    }