javascript - 需要将新日期与日期选择器进行比较

标签 javascript date datetime datepicker

我正在努力处理 javascript 中的日期。我将比较一些输入的日期,但用户和用户输入的日期取决于信息所在的列表。我的问题是比较系统日期和日期选择器日期。系统日期显示格式为“Tue Dec 22 2015 00:00:00 GMT+0000 (GMT)”日期选择器显示 22/12/2015。如何更改系统日期以匹配日期选择器格式,以便我可以比较日期?我想在没有 jQuery 的情况下做到这一点(我知道日期选择器违背了这一点)。

到目前为止,我的日期代码基本上只是将时间设置为 00:00:00。

var today = new Date();
today.setHours(0,0,0,0);

var yesterday = new Date();
yesterday.setDate(yesterday.getDate() - 1);
yesterday.setHours(0,0,0,0);

var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
tomorrow.setHours(0,0,0,0);

console.log(today);


var dateTask = document.getElementById("date").value;

    console.log(dateTask);

最佳答案

您必须将用户输入解析为 Date 对象。 22/12/2015 不是 Date 构造函数的有效日期字符串,因此您必须自己解析它。 你可以这样做:

var dateSplit= document.getElementById("date").value.split('/'),
    dateTask = new Date(dateSplit[2],dateSplit[1]-1,dateSplit[0], 0, 0, 0, 0);

注意:此代码非常基本,在解析真实用户输入时需要增强。

之后您可以像这样比较日期:

today.getTime() === dateTask.getTime()

关于javascript - 需要将新日期与日期选择器进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34425534/

相关文章:

javascript - 如何更改 Stats.js 大小?

jquery函数转换日期时间,分割日期时间 "2010-10-18 10:06"返回 "18/10/2010"和 "10:06"

python - 如何使用以字符串形式给出的 Pandas 来计算事件的持续时间?

javascript - 实现像 jQuery 这样的可链接 JavaScript 框架的最直接方法是什么?

javascript - 将 PHP 数组转换为项目对象以与 AngularJS 一起使用

ANSI 格式的 JavaScript CSV 文本下载 (Windows-1252)

java - 无法计算 9/30/11 2 :58:49 PM EST? 的日期格式字符串

java - Spring Boot MongoRepository 按日期与 Criteria lt 和 gte 查询给出错误结果

r - 转换序列日期

python - 调整DataFrame中的异常格式,函数继续返回None