我需要找出用户在 Javascript 中选择的两个日期是否相同。日期以字符串形式传递给此函数(“xx/xx/xxxx”)。这就是我需要的全部粒度。
这是我的代码:
var valid = true;
var d1 = new Date($('#datein').val());
var d2 = new Date($('#dateout').val());
alert(d1+"\n"+d2);
if(d1 > d2) {
alert("Your check out date must be after your check in date.");
valid = false;
} else if(d1 == d2) {
alert("You cannot check out on the same day you check in.");
valid = false;
}
将日期转换为对象后的 JavaScript 警报如下所示:
2011 年 1 月 25 日星期二 00:00:00 GMT-0800(太平洋标准时间)
2011 年 1 月 25 日星期二 00:00:00 GMT-0800(太平洋标准时间)
确定日期 1 是否大于日期 2 的测试有效。但使用 == 或 === 运算符不会将 valid 更改为 false。
使用
getTime()
方法。它将检查日期的数值,并且适用于大于/小于检查以及等于检查。
编辑:
if (d1.getTime() === d2.getTime())
如果您不想打电话
getTime()
,请尝试以下操作:
(a >= b && a <= b)
var d1 = new Date($('#datein').val());
var d2 = new Date($('#dateout').val());
使用两种简单的方法来检查相等性
if( d1.toString() === d2.toString())
if( +d1 === +d2)
您可以检查它们的差异是否为零,而不是直接比较日期。
if (d1 - d2 === 0)
var date = Wed Oct 07 2015 19:48:08 GMT+0200 (Central European Daylight Time);
var dateOne = new Date(date);
var dateTwo = new Date();
var isEqual = dateOne.getDate() === dateTwo.getDate()
this will give you the dates equality