js 計算日期相隔天數

來源:互聯網
上載者:User
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head> <script language=javascript>//判斷年份是否是閏年 function isLeapYear(year){ if(year % 4 == 0 && ((year % 100 != 0) || (year % 400 == 0))) {     return true; } return false; }//判斷前後兩個日期function validatePeriod(fyear,fmonth,fday,byear,bmonth,bday){ if(fyear < byear){  return true; }else if(fyear == byear){  if(fmonth < bmonth){   return true;  } else if (fmonth == bmonth){   if(fday <= bday){    return true;   }else {    return false;   }  } else {   return false;  } }else {  return false; }}//計算兩個日期的差值function get(){var d1 = document.getElementById("id1").value;var d2 = document.getElementById("id2").value;var disNum=compareDate(d1,d2);alert(disNum);}function compareDate(date1,date2){    var regexp=/^(/d{1,4})[-|/.]{1}(/d{1,2})[-|/.]{1}(/d{1,2})$/;    var monthDays=[0,3,0,1,0,1,0,0,1,0,0,1];    regexp.test(date1);    var date1Year=RegExp.$1;    var date1Month=RegExp.$2;    var date1Day=RegExp.$3;     regexp.test(date2);    var date2Year=RegExp.$1;    var date2Month=RegExp.$2;    var date2Day=RegExp.$3;  if(validatePeriod(date1Year,date1Month,date1Day,date2Year,date2Month,date2Day)){  firstDate=new Date(date1Year,date1Month,date1Day);     secondDate=new Date(date2Year,date2Month,date2Day);       result=Math.floor((secondDate.getTime()-firstDate.getTime())/(1000*3600*24));     for(j=date1Year;j<=date2Year;j++){         if(isLeapYear(j)){             monthDays[1]=2;         }else{             monthDays[1]=3;            }         for(i=date1Month-1;i<date2Month;i++){             result=result-monthDays[i];         }     }     return result; }else{  return 'the first field must before the second date.'; }}</script></head><body><input type=text value="2008-02-04" id=id1><input type=text value="2008-03-04" id = id2><input type=button id=bt value="OK" onclick="get()"></body></html>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.