“每个月20号到下个月19号算一个月”这是自然月吗

解决方案 »

  1.   

    是啊,因为这个是根据自然月的天数所以天数不能固定,谁能来帮帮我
      

  2.   

    <SCRIPT language=JavaScript>
    //传回公历 y年某m+1月的天数
    function monthDays(y,m) {var solarMonth=new Array(31,28,31,30,31,30,31,31,30,31,30,31);   if(m==1)
          return(((y%4 == 0) && (y%100 != 0) || (y%400 == 0))? 29: 28)
       else
          return(solarMonth[m])
    }function putMonthN(a,b) 
    {var da,db;//得到两个日期数组
    da=a.split(".");
    db=b.split(".");//得到年差月差日差y=da[0]-db[0];
    m=da[1]-db[1];
    d=da[2]-db[2];//得知a/b哪个日期更早  a早 标记为-1 b早标记为0 标记为flagflag=(y>0 ||(y==0 && m>0) || (y==0 && m==0 && d>0))?0:-1;//计算月数
    if(flag==-1)
    {
    y=-y;m=-m;d=-d;
    bigMonthDN=monthDays(db[0],db[1]-1);
    }
    else
    bigMonthDN=monthDays(da[0],da[1]-1);
    num=12*y + m + ((d<bigMonthDN-1)? ( (d>=-1)?0:-1 ):1)return num
    }
    alert ("相距"+putMonthN("2005.2.3","2005.3.4")+"个月");
    </SCRIPT>