js計算兩個時間相差月份


》約束:結束時間endTime>開始時間startTime

》思路:之前總是會遺漏掉很多種情況,所以列舉出各種情況,發現其規律:

1.年-月:(endTime.getYear()-startTime.getYear())*12

2.月-月:endTime.getMonth()-startTime.getMonth(),該情況會出現負數情況

3.日-月:該例中時間具體到分,先將小時和分換算成天,再統計成月。

    如果 endTime.getDate()>=startTime.getDate(),則為0,否則為-1

》代碼實現

 1 function monDiff(startTime,endTime){
 2     startTime=new Date(startTime);
 3     endTime=new Date(endTime);
 4     var date2Mon;
 5      var startDate=startTime.getDate()+startTime.getHours()/24+startTime.getMinutes()/24/60;
 6     var endDate=endTime.getDate()+endTime.getHours()/24+endTime.getMinutes()/24/60;
 7     if(endDate>=startDate){
 8         date2Mon=0;
 9     }else{
10         date2Mon=-1;
11     }
12     return (endTime.getYear-startTime.getYear())*12+endTime.getMonth-startTime.getMonth()+date2Mon;
13 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM