Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将新日期与mySql格式字符串中的日期进行比较_Javascript_Mysql_Format_Compare - Fatal编程技术网

Javascript 将新日期与mySql格式字符串中的日期进行比较

Javascript 将新日期与mySql格式字符串中的日期进行比较,javascript,mysql,format,compare,Javascript,Mysql,Format,Compare,我有var a=newdate()和var b=“21:36:40 12/01/2013” a是当前日期 b是该格式的mySql数据库中的字符串日期 我需要: If a - b > 1 year alert("old") else alert ("new"). 我试图把绳子分开,但事情越来越复杂了。。 (很抱歉,如果我没有正确格式化代码) var a=新日期(); var b=“21:36:40 12/01/2013” var c=b.分割(“”); var d=c[0]; var e=

我有
var a=newdate()
var b=“21:36:40 12/01/2013

a是当前日期

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

我需要:

If a - b > 1 year alert("old") else alert ("new").
我试图把绳子分开,但事情越来越复杂了。。 (很抱歉,如果我没有正确格式化代码)

var a=新日期();
var b=“21:36:40 12/01/2013”
var c=b.分割(“”);
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.分割(“/”);
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();
函数myFunction4(){
如果(m1>m&&l1>l&&k1>k){
警惕(“旧”);
}

否则,如果(m1>m&&l1==l&&k1,您可以通过时间戳比较来尝试:

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

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

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

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

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])
);

这不是我想要的。我需要知道这两个日期之间的差异是否超过一年。
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])
);