忽略时间戳值的Javascript日期比较

忽略时间戳值的Javascript日期比较,javascript,html,Javascript,Html,忽略时间戳比较两个日期最简单的方法是什么。我有两个日期firstDate来自数据库(转换成javascript日期)和secondDate来自日期选择器输入字段 基本上是为了 我的算法这两个日期是相等的,因为它不考虑时间戳,但是代码不会认为它等于第一个日期< /C> >代码< > 01:00 00 < /代码>。br/> 如何完全丢弃时间戳进行比较 firstDate: 1992年3月24日星期二01:00:00 GMT-0500(中央夏令时) 第二个日期: 1992年3月24日星期二00:00

忽略时间戳比较两个日期最简单的方法是什么。我有两个日期
firstDate
来自数据库(转换成javascript日期)和
secondDate
来自日期选择器输入字段
基本上是为了 我的算法这两个日期是相等的,因为它不考虑时间戳,但是代码不会认为它等于<代码>第一个日期< /C> >代码< > 01:00 00 < /代码>。br/> 如何完全丢弃时间戳进行比较

firstDate:

1992年3月24日星期二01:00:00 GMT-0500(中央夏令时)

第二个日期:

1992年3月24日星期二00:00:00 GMT-0500(中央夏令时)

代码:

   if(firstDate < secondDate) {

        alert("This alert shouldn't pop out as dates are equal");
    }
if(firstDate
您可以使用
toDateString
删除时间,并将其重新分配给firstDate和secondDate变量。也许有更好的办法,但这就是我想到的

firstDate = new Date(firstDate.toDateString());
secondDate = new Date(secondDate.toDateString());
if(firstDate < secondDate){
    alert("This alert shouldn't pop out as dates are equal");
}

您也可以查看我的。

德里克的答案是正确的。不创建新日期实例的另一种方法是创建RFC3339日期字符串

var firstDateStr = firstDate.toISOString().slice(0, 10);
var secondDateStr = secondDate.toISOString().slice(0, 10);

return (firstDateStr < secondDateStr);
var firstDateStr=firstDate.toISOString().slice(0,10);
var secondDateStr=secondDate.toISOString().slice(0,10);
返回(firstDateStr
使用带有所有零参数的
Date.setHours(小时、分钟、秒、毫秒)
函数将两个日期的时间设置为午夜(如果出于其他目的需要日期和时间,请复制一份)。

Derek感谢您的回复。我也有同样的解决办法,想知道是否还有其他办法。如果没有其他人回复,我将接受您的回答。在我的示例中,我不是在比较字符串,而是用
toDateString()的结果初始化
new Date()
var firstDateStr = firstDate.toISOString().slice(0, 10);
var secondDateStr = secondDate.toISOString().slice(0, 10);

return (firstDateStr < secondDateStr);