比如,周期是12个月,第一个日期是2010-07-02,那求得结果是2011-07-01
或者,周期是12个月,第一个日期是2010-07-01,那求得结果是2011-06-30

解决方案 »

  1.   

    完全字符串操作。我写个伪代码吧1. 取得第一个日期的年份 year ,月份 month ,日期 day。(substr函数).
    2. 
       var year = '上面取到的year ';
       var month = '上面取到的month ';
       var day = '上面取到的day ';   var result = "";//结果日期   var monthArr = [0,31,28,31,30,31,30,31,31,30,31,30,31];//每个月的天数。
       if((0==year %4&&((year %100!=0)||(year %400==0))))
       {
          //--如果是闰月
          monthArr[2] = 29;
       }   if(month==1)
       {
          result = year+"1231";
       }else
       {
          if(day==1)//如果是当期日期是一号,那么月份就要减1
          {
             month = month-1;
             result = (year+1)+(month)+monthArr[month];
          }
          else //如果日期大于1号,那直接年+1,月不变,日减1.
          {
             result = (year+1)+(month)+(day-1);
          }
       }
     
      
      

  2.   


    注意里面除法操作,如果要 转成 Int 类型操作,那你就转下,上面思路肯定是对的。及早结贴。。