Javascript比较两个日期以获得差异

Javascript compare two dates to get a difference(Javascript比较两个日期以获得差异)
本文介绍了Javascript比较两个日期以获得差异的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我正在尝试比较两个不同的日期,以查看输入的日期是否在今天日期的 7 天之后.我做了一些谷歌搜索并想出了这个:

I am trying to compare two different dates to see if the date inputted is after 7 days of todays date. I have done a bit of googling and come up with this:

function val_date(input){
    var date = new Date(input);
    date = date.getTime() / 1000;
    var timestamp = new Date().getTime() + (7 * 24 * 60 * 60 * 1000)
    window.alert("Date: "+date + " = N_Date: "+timestamp);
    if(timestamp > date || timestamp === date){
        // The selected time is less than 7 days from now
        return false;
    }
    else if(timestamp < date){
    // The selected time is more than 7 days from now
        return true;
    }
    else{
    // -Exact- same timestamps.
        return false;
    }
}

我正在使用提醒,以便我可以检查我的进度以确保日期不同.警报的输出只是说:

I am using an alert so that I can check my progress to make sure the dates are different. The output of the alert just says:

日期:NaN = N_Date = 13255772630(<- 或类似的东西).

Date: NaN = N_Date = 13255772630 (<- or something like that).

我在这里做错了吗?
不确定是否有帮助,但我的日期格式是 DD-MM-YYYY

推荐答案

如果你在比较日期并且不想包含时间,你可以使用类似的东西:

If you are comparing dates and don't want to include time, you can use something like:

// dateString is format DD-MM-YYYY
function isMoreThan7DaysHence(dateString) {

    // Turn string into a date object at 00:00:00
    var t = dateString.split('-');
    var d0 = new Date(t[2], --t[1], t[0]);

    // Create a date for 7 days hence at 00:00:00
    var d1 = new Date();
    d1.setHours(0, 0, 0, 0);
    d1.setDate(d1.getDate() + 7);

    return d0 >= d1;
}

请注意,今天日期的小时数必须归零.

Note that the hours for today's date must be zeroed.

这篇关于Javascript比较两个日期以获得差异的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

How do I can get a text of all the cells of the table using testcafe(如何使用 testcafe 获取表格中所有单元格的文本)
node_modules is not recognized as an internal or external command(node_modules 未被识别为内部或外部命令)
How can I create conditional test cases using Protractor?(如何使用 Protractor 创建条件测试用例?)
PhantomJS and clicking a form button(PhantomJS 并单击表单按钮)
Clicking #39;OK#39; on alert or confirm dialog through jquery/javascript?(在警报上单击“确定或通过 jquery/javascript 确认对话框?)
QunitJS-Tests don#39;t start: PhantomJS timed out, possibly due to a missing QUnit start() call(QunitJS-Tests 不启动:PhantomJS 超时,可能是由于缺少 QUnit start() 调用)