首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

js 比较时间的大小,碰到bug,虚心求解

2013-01-04 
js 比较时间的大小,遇到bug,虚心求解比较两个时间的大小var a 2012-02-01 16:05:45var b 2012-01-

js 比较时间的大小,遇到bug,虚心求解
比较两个时间的大小
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-01-01 16:05:45";
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;
}

热点排行