我正在尝试检查格式为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
}
}
如果我执行
isLinkExpiryDateWithinRange('2012年12月08日')
,我希望它显示1,因为这是在范围内的,但它显示的是2。此外,第一个警报显示为true,第二个警报显示为false。请问有人可以解释一下发生了什么吗?