确定日期是否在JavaScript中的最佳方法是什么?
我在JavaScript中有一个日期对象,我想知道这个日期是否是今天。 这样做的最快方法是什么?
我关心的是比较日期对象,因为人们可能有不同的时间,但今天的任何时间都应该返回true
。
你可以使用toDateString
:
var d = new Date() var bool = (d.toDateString() === otherDate.toDateString());
我认为基于toDateString()
的答案会起作用,但我个人会避免使用它们,因为它们基本上都会提出错误的问题。
这是一个简单的实现:
function areSameDate(d1, d2) { return d1.getFullYear() == d2.getFullYear() && d1.getMonth() == d2.getMonth() && d1.getDate() == d2.getDate(); }
如果这不是您所需要的, MDN对JS Date对象API有一个很好的概述。
var someDate = new Date("6 Dec 2011").toDateString(); var today = new Date().toDateString(); var datesAreSame = (today === someDate);
如果两者都是Date()对象,您可以使用它来“格式化”日期,它只会在年/月/日进行比较: if(inputDate.setHours(0,0,0,0) == todaysDate.setHours(0,0,0,0));
几乎相同的问题: 如何检查输入日期是否等于今天的日期?