将硬编码日期与当前日期进行比较

时间:2015-03-23 06:25:36

标签: javascript date

我想在javascript中比较日期。 我有一个硬编码的日期(2015年3月23日上午11:20),我试图将它与当前日期相同的格式进行比较。 但我总是认为它不一样。



function formatDate(date) {
    var hours = date.getHours();
    var minutes = date.getMinutes();
    var ampm = hours >= 12 ? 'pm' : 'am';
    hours = hours % 12;
    hours = hours ? hours : 12; // the hour '0' should be '12'
    minutes = minutes < 10 ? '0' + minutes : minutes;
    var strTime = hours + ':' + minutes + ' ' + ampm;
    return date.getMonth() + 1 + "/" + date.getDate() + "/" + date.getFullYear() + "  " + strTime;

}

var d = new Date();
var timeNow = formatDate(D);
var startTime6 = document.getElementById('tno6_time').innerHTML;
if (timenow == startTime6) {
    alert("Same");
}
else {
    alert("not same");
}
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

您的javascript部分:

var d = new Date();
var timeNow = formatDate(D);
if (timenow == startTime6) {
    alert("Same");
}

请在上面的代码中检查您创建的名称为 d 的变量,并且您传递的是未声明的变量 D 。您还有 timeNow中的拼写错误不是 timenow 。应该是

var timeNow = formatDate(d);
if (timeNow == startTime6) {
    alert("Same");
}

除了检查两个变量值是使用 console.log()函数还是使用 alert()并查看是否有相同的值然后它应该警告& #39;同样&#39;别的&#39;不一样&#39;。

请注意new Date()总是会给你当前的时间,所以如果你要与硬编码的日期进行比较那么只有在有可能结果出现时才会出现相同的情况。只有在硬编码的日期和时间完全相同的情况下执行此代码时才会发生。

以这种方式检查代码非常困难,因为毫秒更改会影响您的结果。

Check this demo