Javascript 如何知道今天的日期?

Javascript 如何知道今天的日期?,javascript,Javascript,我正在尝试,但不工作。。。为什么? <html> <body> <script type="text/javascript"> var today=new Date(); //today is Nov 28, 2010 today.setHours(0); today.setMinutes(0); today.setSeconds(0); document.write(t

我正在尝试,但不工作。。。为什么?

<html>
<body>
    <script type="text/javascript">

        var today=new Date(); //today is Nov 28, 2010
        today.setHours(0);
        today.setMinutes(0);
        today.setSeconds(0);
        document.write(today+" ");

        var today2 = new Date("November 28, 2010");
        document.write(today2 + " ");
        if (today == today2) { document.write("==");
        if (!(today > today2) && !(today < today2) ) {document.write("==  ");}
        if (today > today2) { document.write(">  ");}
        if (today >= today2 ){ document.write(">=  ");}
        if (today < today2 ) { document.write("<  ");}
        if (today <= today2 ){ document.write("<=  ");}

    </script>
</body>
</html>
两个日期不是都一样吗?因此,我应该得到
==
打印,但没有发生;(


提前感谢您的帮助。

它们永远不会匹配,因为您正在比较两个独立的
Date
对象实例

您需要获得一些可以比较的常用值。例如
.toDateString()

如果只比较两个独立的
Date
对象,即使它们具有完全相同的日期值,它们仍然是不同的

例如:

today == new Date( today );  // false

它们是相同的日期/时间值,但不是相同的对象,因此结果为
false

您可以通过将给定日期和今天日期的时间设置为
00:00:00
,然后比较它们

function today(td) {
    var d = new Date();
    return td.getDate() == d.getDate() && td.getMonth() == d.getMonth() && td.getFullYear() == d.getFullYear();
}
代码示例如下所示:

function checkDateIsToday (today, givenDate) {
  
  if(today.setHours(0,0,0,0) === givenDate.setHours(0,0,0,0)) {
     console.log('Date is todays date');
  } else {
     console.log('Date is not todays date');
  } 

}

checkDateIsToday(new Date(), new Date('2020-07-10'));

您是否询问了一种计算日期差异的方法,或者一种确定给定日期是否为今天的方法?对于第一个问题,请参阅:。对于第二个问题,请检查我的答案。感谢大家的回答……这是一种js实验;)是否有一种机制可以覆盖操作选择?此解决方案比今天更快。toDateString()==today2.toDateString();在jsbench.me上的性能测试结果表明,比较字符串的速度要慢99%。至少,速度要慢80%。
function today(td) {
    var d = new Date();
    return td.getDate() == d.getDate() && td.getMonth() == d.getMonth() && td.getFullYear() == d.getFullYear();
}
function checkDateIsToday (today, givenDate) {
  
  if(today.setHours(0,0,0,0) === givenDate.setHours(0,0,0,0)) {
     console.log('Date is todays date');
  } else {
     console.log('Date is not todays date');
  } 

}

checkDateIsToday(new Date(), new Date('2020-07-10'));