【问题标题】:Compare new Date with date in a string in mySql format将新日期与 mySql 格式的字符串中的日期进行比较
【发布时间】:2014-02-04 08:24:40
【问题描述】:

我有var a = new Date()var b = "21:36:40 12/01/2013"。

a 是当前日期

b 是来自mySql 数据库的该格式的字符串日期

我需要:

If a - b > 1 year alert("old") else alert ("new").

我试图拆分字符串,但它变得复杂.. (对不起,如果我没有正确格式化代码)

            var a = new Date(); 
        var b = "21:36:40 12/01/2013"

        var c = b.split(" "); 
        var d = c[0]; 
        var e = d.split(":"); 
        var f = e[0];
        var g = e[1]; 
        var h = e[2];   
        var i = c[1]; 
        var j = i.split("/"); 
        var k = j[0]; 
        var l = j[1];
        var m = j[2]; 
        var m1 = a.getFullYear(); 
        var k1 = a.getDate(); 
        var l1 = a.getMonth(); 
        var e1 = a.getHours(); 
        var g1 = a.getMinutes();
        var h1 = a.getSeconds(); 

    function myFunction4() {
        if (m1 > m && l1 > l && k1 > k) { 
        alert("old");
        }
        else if (m1 > m && l1 == l && k1 <= 12) {
}
        alert("old");
        }   
        else {
        alert("new");
        }
    }
    myFunction4(); // incomplete

【问题讨论】:

    标签: javascript mysql format compare


    【解决方案1】:

    你可以尝试通过时间戳比较来做:

    if (+(new Date('21:36:40 12/01/2013')) > +(new Date())){
        alert('new')
    } else{
        alert('old')
    }
    

    【讨论】:

    • 这不符合我的要求。我需要知道两个日期之间的差异是否超过一年
    【解决方案2】:

    您可以使用它的构造函数创建一个日期对象,如下所示:

    var your_date = new Date("21:36:40 12/01/2013");
    var now       = new Date();
    if ( now > your_date) {
     ....
    }
    

    【讨论】:

      【解决方案3】:

      您可以使用正则表达式来简化您的字符串搜索/拆分算法:

      var b = "21:36:40 12/01/2013"
      var reg = /(\d{2}):(\d{2}):(\d{2}) (\d{2})\/(\d{2})\/(\d{4})/;
      var dateArray = reg.exec(b); 
      var dateObject = new Date(
          (+dateArray[6]),
          (+dateArray[5])-1, // Careful, month starts at 0!
          (+dateArray[4]),
          (+dateArray[1]),
          (+dateArray[2]),
          (+dateArray[3])
      );
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-10-19
        • 2012-11-23
        • 1970-01-01
        • 2019-08-15
        • 1970-01-01
        • 2015-11-24
        • 1970-01-01
        相关资源
        最近更新 更多