将日期与字符串javascript中的日期进行比较
我试图用javascript比较几个日期。首先,我从一个数据库得到。在数据库中,它是日期格式的,但在发送到json文件后,我猜它只是一个字符串 第二次我得到了javascript中的日期格式。我在javascript中找到了以下脚本:将日期与字符串javascript中的日期进行比较,javascript,date,Javascript,Date,我试图用javascript比较几个日期。首先,我从一个数据库得到。在数据库中,它是日期格式的,但在发送到json文件后,我猜它只是一个字符串 第二次我得到了javascript中的日期格式。我在javascript中找到了以下脚本: var todayAEJ = new Date(); var ddAEJ = todayAEJ.getDate(); var mmAEJ = todayAEJ.getMonth()+1; //January is 0! var yyyyAEJ = todayAEJ
var todayAEJ = new Date();
var ddAEJ = todayAEJ.getDate();
var mmAEJ = todayAEJ.getMonth()+1; //January is 0!
var yyyyAEJ = todayAEJ.getFullYear();
if(ddAEJ<10){ddAEJ='0'+ddAEJ} if(mmAEJ<10){mmAEJ='0'+mmAEJ} todayAEJ = ddAEJ+'-'+mmAEJ+'-'+yyyyAEJ;
但当今天的日期大于val.date\u End's day时,它返回真值。因此,当月份不同时,我不能使用此表单。在这种情况下我能做什么?如果您可以使用
MM-DD-YYYY
格式而不是DD-MM-YYYY
,您可以使用Date.parse
:
var todayAEJTimeStamp = Date.parse(todayAEJ);//Date parse needs `MM-DD-YYYY` format
//if val.date_End is instance of Date
if(todayAEJTimeStamp > val.date_End.getTime()) {
//your code here
}
你必须通过微时间进行比较
var date = new Date("11/21/1987 16:00:00");
var milliseconds = date.getTime(); // Compare this milliseconds
您甚至可以使用var newDate=myDate[1]+“/”+myDate[0]+“/”+myDate[2]代码>
使用以上代码…它将解决您的问题
Iinjoy…除了时间戳解决方案,我建议您在任何情况下使用JS中的日期对象。Date对象在JS中有非常奇怪的行为,这个库很方便。在javascriptit中使用时间戳它不起作用。我想这是因为我的客户日期是这样的格式:dd-mm-yy而不是mm-dd-yy我不能。我从服务器收到日期,它的格式是OK,什么是val.date\u End
?一串数据对象?它是来自json文件的字符串。我有一个json文件,读取每一行并将其保存在val中,然后读取每个属性值。
var date = new Date("11/21/1987 16:00:00");
var milliseconds = date.getTime(); // Compare this milliseconds
otherDate = '13-01-2014';
myDate=myDate.split("-");
var newDate=myDate[1]+","+myDate[0]+","+myDate[2];
otherDateTimeStamp = new Date(newDate).getTime();
todayAEJTimeStamp = new Date().getTime();
if(todayAEJTimeStamp > otherDateTimeStammp){
// your code
}