猿问

仅比较日期部分,而不比较JavaScript中的时间

仅比较日期部分,而不比较JavaScript中的时间

下面的代码有什么问题?

也许只是比较日期而不是时间会更简单。我也不知道该如何做,我搜索了,但我找不到我的确切问题。

顺便说一句,当我在警报中显示这两个日期时,它们显示的是完全相同的。

我的代码:

window.addEvent('domready', function() {
    var now = new Date();
    var input = $('datum').getValue();
    var dateArray = input.split('/');
    var userMonth = parseInt(dateArray[1])-1;
    var userDate = new Date();
    userDate.setFullYear(dateArray[2], userMonth, dateArray[0], now.getHours(), now.getMinutes(), now.getSeconds(), now.getMilliseconds());

    if (userDate > now)
    {
        alert(now + '\n' + userDate);
    }});

有没有更简单的方法来比较日期而不包括时间?


慕莱坞森
浏览 619回答 3
3回答

阿波罗的战车

我仍然在学习JavaScript,我找到的唯一种方法是在没有时间的情况下比较两个日期,那就是使用setHours方法,并将小时、分钟、秒和毫秒设置为零。然后比较这两个日期。例如,date1 = new Date()date2 = new Date(2011,8,20)date2将小时、分钟、秒和毫秒设置为零,但Date 1将设置为创建Date 1的时间。要消除Date 1上的小时、分钟、秒和毫秒,请执行以下操作:date1.setHours(0,0,0,0)现在,您可以将这两个日期作为日期进行比较,而不必担心时间因素。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答