在JavaScript中判断日期对象的格式是否正确?至少两种格式(yyyy-MM-dd或yyyy/MM/dd)

解决方案 »

  1.   


    s = "2009-2-28"
    alert(isDate(s))function isDate(s){
        var r = /^\d{4}(\-|\/)\d{1,2}\1\d{1,2}$/
        if(!r.test(s)) return false;
        s = s.replace(/-/g,"/");
        var a = s.split("/");
        var y = a[0];
        var m = parseInt(a[1],10)-1;
        var d = parseInt(a[2],10);
        var dt = new Date(y,m,d);
        return y==dt.getFullYear() && m == dt.getMonth() && d == dt.getDate();
    }