1 计算日期格式为 yyyy-mm-dd 的 天数差

 1 代码:
 2 var strDateArrayStart = beginDate.split("-");
 3 var strDateArrayEnd = endDate.split("-");
 4 var strDateS = new Date(strDateArrayStart[0] + "/" + strDateArrayStart[1] + "/" + strDateArrayStart[2]);
 5 var strDateE = new Date(strDateArrayEnd[0] + "/" + strDateArrayEnd[1] + "/" + strDateArrayEnd[2]);
 6        
 7 var intDay = (strDateE-strDateS)/(1000*3600*24*30);
 8 // 入荷予定日 beginDate - 入荷予定日 endDate >= 7の場合
 9 if(intDay >= 7){
10 dealSelfErr(document.forms[0].beginDate, getMsg(W311));
11   return false;
12  } 

注:
1秒=1000毫秒
1小时=60分钟*60秒=3600秒
一天=24小时

2 计算 日期 之间月份差

   这里我写了3中方法:

  

112 var sd = new Date("2011/11/01");
3 var ed = new Date("2012/01/01");
4 var monn = ((ed.getYear() - sd.getYear())*12+(ed.getMonth()- sd.getMonth()))+1;
2var sd = new Date("2011/11/01");
var ed = new Date("2012/01/01");
var intMon = (ed - sd)/(1000*3600*24*30);
 1 (3 2 var arrA = a.split("-"),
 3         arrB = b.split("-"),
 4         yearA = arrA[0],
 5         yearB = arrB[0],
 6         monthA = +arrA[1],
 7         monthB = (yearB-(+yearA))*12+parseInt(arrB[1]),
 8         rA = [],
 9         rB = [];
10        var i = 0;
11     
12     alert(monn);
13     do{
14         do{
15             i++;
16             rA.push(yearA+""+(monthA > 9 ? monthA : "0"+monthA));
17            // rB.push(yearA+"年"+monthA+"月");
18             if(monthA == 12){
19                 monthA=1;
20                 monthB -= 12;
21                 break;
22             }
23         }while(monthB > monthA++)
24     }while(yearB > yearA++)
25     alert(i);
26    // alert([rA,rB]);
27     return [rA];
28     
29 }
30 function aa(){
31         var c = this.getD("2011-11","2012-02");
32         alert(c)
33     }

 

posted on 2012-09-14 22:10  baiyixianzi  阅读(5694)  评论(0编辑  收藏  举报