有人可以建议一种方法来比较使用JavaScript大于,小于和过去的两个日期的值吗?值将来自文本框.
new Date(Date.parse("Jul 8, 2005"));
Run Code Online (Sandbox Code Playgroud)
2005年7月8日星期五00:00:00 GMT-0700(太平洋标准时间)
new Date(Date.parse("2005-07-08"));
Run Code Online (Sandbox Code Playgroud)
2005年7月7日星期五17:00:00 GMT-0700(太平洋标准时间)
为什么第二个解析不正确?
我正在尝试检查格式mm.dd.yyyy的日期是否大于今天且小于今天6个月后的日期.
这是我的代码:
var isLinkExpiryDateWithinRange = function(value) {
var monthfield = value.split('.')[0];
var dayfield = value.split('.')[1];
var yearfield = value.split('.')[2];
var inputDate = new Date(yearfield, monthfield - 1, dayfield);
var today = new Date();
today = new Date(today.getFullYear(), today.getMonth(), today.getDate());
alert(inputDate > today);//alert-> true
var endDate = today;
endDate.setMonth(endDate.getMonth() + 6);
alert(inputDate > today);//alert-> false
if(inputDate > today && inputDate < endDate) {
alert('1');
} else {
alert('2');/always alert it
}
}
Run Code Online (Sandbox Code Playgroud)
如果我执行isLinkExpiryDateWithinRange('12.08.2012')我希望它将显示1,因为它在范围内,但它显示2.此外,第一个警报显示为真,第二个警告显示为假.
有人可以解释一下发生了什么吗?