我有2个变量。如何比较JavaScript中的2个变量以查看日期是否相同?我不想随着时间扭转这两个日期。我只是想将它们转换成yyyy/dd/mm格式。如何比较JavaScript中的2个变量以查看日期是否相同?
var DateReported = "20/04/2011";
var StartDate = "16/04/2011";
我要做的东西,如果起始日期< DateReported和别的东西,如果起始日期> DateReported
感谢
我有2个变量。如何比较JavaScript中的2个变量以查看日期是否相同?我不想随着时间扭转这两个日期。我只是想将它们转换成yyyy/dd/mm格式。如何比较JavaScript中的2个变量以查看日期是否相同?
var DateReported = "20/04/2011";
var StartDate = "16/04/2011";
我要做的东西,如果起始日期< DateReported和别的东西,如果起始日期> DateReported
感谢
如果你不想使用转换迄今为止,试试这个(我假设月份和日子总是0填充):
var DateReported = "20/04/2011";
var StartDate = "16/04/2011";
var regExp = /(\d{2})\/(\d{2})\/(\d{4})/;
if
(
StartDate.replace(regExp, "$3$2$1") < DateReported.replace(regExp, "$3$2$1")
)
{
alert("Lesser");
}
else
{
alert("Greater");
}
这工作。谢谢。 – 2011-04-06 19:21:24
如果您在日期作为字符串存储在相同的日期格式,没有理由你不能你字符串比较来检查,如果他们是平等的:
var DateReported = "20/04/2011";
var StartDate = "16/04/2011";
return DateReported == StartDate; // returns false;
更新:如果你确实需要比较日期以确定哪个是最近的,我建议使用库 - 例如在jQuery UI module包含日期处理代码,这样你就可以轻松地分析日期字符串:
由==操作符if(DateReported == StartDate)
return true;
其他
var dReported = $.datepicker.formatDate('d/mm/yy', DateReported);
var dStarted = $.datepicker.formatDate('d/mm/yy', StartDate);
if (dReported > dStarted) { ... }
创建日期对象,并将其转换为毫秒,然后比较了>/<
DateReported = new Date(2011,4,20);
StartDate= new Date(2011,4,16);
if (DateReported .getTime()<StartDate.getTime()) {
alert('DateReported is less than StartDate');
}
试试这个:
var DateReported = "20/04/2011";
var StartDate = "16/04/2011";
DateReported = new Date(DateReported).format("yyyy/dd/MM");
StartDate = new Date(StartDate).format("yyyy/dd/MM");
if (DateReported > StartDate) {
alert("Date Reported Greater");
}
else {
alert("Start Date Greater");
}
为什么你需要将它们转换为检查平等? – 2011-04-06 17:10:47