比较两个时间的大小
var a = "2012-02-01 16:05:45";
var b = "2012-01-31 14:13:11";
为什么结果会是a<b呢?function compareTime(startDate,endDate) {
var startDateTemp = startDate.split(" ");
var endDateTemp = endDate.split(" ");
var arrStartDate = startDateTemp[0].split("-");
var arrEndDate = endDateTemp[0].split("-");
var arrStartTime = startDateTemp[1].split(":");
var arrEndTime = endDateTemp[1].split(":");
var allStartDate = new Date(arrStartDate[0], arrStartDate[1], arrStartDate[2], arrStartTime[0], arrStartTime[1], arrStartTime[2]);
var allEndDate = new Date(arrEndDate[0], arrEndDate[1], arrEndDate[2], arrEndTime[0], arrEndTime[1], arrEndTime[2]); if (allStartDate.getTime() <= allEndDate.getTime()) {
//alert("startTime不能大于endTime,不能通过");
return true;
}
}
var a = "2012-02-01 16:05:45";
var b = "2012-01-31 14:13:11";
为什么结果会是a<b呢?function compareTime(startDate,endDate) {
var startDateTemp = startDate.split(" ");
var endDateTemp = endDate.split(" ");
var arrStartDate = startDateTemp[0].split("-");
var arrEndDate = endDateTemp[0].split("-");
var arrStartTime = startDateTemp[1].split(":");
var arrEndTime = endDateTemp[1].split(":");
var allStartDate = new Date(arrStartDate[0], arrStartDate[1], arrStartDate[2], arrStartTime[0], arrStartTime[1], arrStartTime[2]);
var allEndDate = new Date(arrEndDate[0], arrEndDate[1], arrEndDate[2], arrEndTime[0], arrEndTime[1], arrEndTime[2]); if (allStartDate.getTime() <= allEndDate.getTime()) {
//alert("startTime不能大于endTime,不能通过");
return true;
}
}
你中间写错了 allStartDate 、allEndDate得到的时间是上面两个
给成用valueOf 比较,比较毫秒数
if (allStartDate.valueOf() <= allEndDate.valueOf()) {
var b = "2012-00-31 14:13:11";
改成这样试试
月份是从0开始的
2012-02-01其实是三月一号
2012-01-31其实是2月31号 2月没31号 所以移到三月2号(根据闰年而异)
function compareTime(startDate,endDate) {
var startdate = new Date(startDate);
var enddate = new Date(endDate);
if(startdate.valueOf() < enddate.valueOf())
{
return true;
}
return false;
}