Chinaunix

标题: 使用js算出两个月之间差几个月 [打印本页]

作者: cu_Cbear    时间: 2011-09-25 22:33
标题: 使用js算出两个月之间差几个月
使用js算出两个月之间差几个月


使用js算出两个月之间差几个月 .项目需求,算出两个月之间差几个月,不足一月按一个月算,即8月1日到9月2日就算两个月了,8月1日到9月1日就算一个月了,从网上找点资料,接合自己的需求,写出自己的js方法,现提供出来,供大家参考,例如开始日期为20110801,截止日期为20110902

Java代码

  1.                 function setRateValidity(){
  2.                         var beginDate = document.getElementById("crlimit:beginDate").value;
  3.                         var endDate = document.getElementById("crlimit:endDate").value;
  4.                         if(beginDate!=""&&endDate!=""&&endDate>=beginDate&&(endDate-beginDate)<=10000){
  5.                                 var startDate = new Date(beginDate.substr(0,4),beginDate.substr(4,2)-1,beginDate.substr(6,2));//月份是从0开始算的
  6.                                 var startDateUTC = Date.UTC(startDate.getFullYear(),startDate.getMonth(),startDate.getDate());
  7.                                 var end = new Date(endDate.substr(0,4),endDate.substr(4,2)-1,endDate.substr(6,2));
  8.                                 var endDateUTC = Date.UTC(end.getFullYear(),end.getMonth(),end.getDate());        var workmonthnum = 0;
  9.                                 for (var i=startDateUTC;i<=endDateUTC ; i=i+86400000 ){
  10.                                          var days = new Date(i);
  11.                                                    if (days.getDate()==1){
  12.                                                 workmonthnum++;
  13.                                                     }
  14.                                         }
  15.                                 if(beginDate.substr(6,2)=='01'&&endDate.substr(6,2)=='01'){
  16.                                         workmonthnum = workmonthnum -1;
  17.                                 }
  18.                                 if(beginDate.substr(0,4)==endDate.substr(0,4)&&beginDate.substr(4,2)==endDate.substr(4,2)){
  19.                                         workmonthnum = 1;
  20.                                 }       
  21.                                 document.getElementById("crlimit:rateValidity").value = workmonthnum;
  22.                                 }
  23.                 }
复制代码
分享到:   .下拉列表的联动




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2