asfman
android developer
posts - 90,  comments - 213,  trackbacks - 0

第一种:
<script language="javascript">
    //参数:startDate--开始日期;endDate--结束日期
 //方法:分别比较日期、月份、年份的差额,根据差额进行进位,借位的计算
    function DateDiff(startDate,endDate)
 {
  var sDate = new Date(Date.parse(startDate.replace(/-/g, "/"))); //转化成日期对象
  var eDate = new Date(Date.parse(endDate.replace(/-/g, "/")));

  //获得各自的年、月、日
  var sY    = sDate.getFullYear();    
  var sM    = sDate.getMonth()+1;
  var sD    = sDate.getDate();
  var eY    = eDate.getFullYear();
  var eM    = eDate.getMonth()+1;
  var eD    = eDate.getDate();
  
  
  //var flagD = 0;   //日期标记:
  var flagM = 0;    //月份进/减位标记
  var flagY = 0;    //年份进/减位标记
  var months = 0;   //相隔约数,返回值
  
     var d = eD - sD;  //日期相差天数
  if(d>0&&d>=15)  //如果为正,且大于15天,月份进一
  {
   flagM = 1;
  }
  if(d<0&&30+d<15)  //如果为负,且相隔天数<15,月份减一
  {
   flagM = -1;
  }
  
  var m = eM + flagM - sM;   //相隔月数 = 结束月份 + 月份进/减位标记 - 开始月份
  if(m<0)                    //如果小于0,年数减一,月数为12减去相隔月数
  {   
      flagY = -1;
   m = 12 + m
  }
  
  var y = eY + flagY - sY  //相隔年数 = 结束年份 + 年份进/减位标记 - 开始年份
    
  if(y>=0)                 //如果大于等于0,则返回值为年份数*12 + 月份数,否则返回0
      months = y*12 + m

     document.getElementById("txtMonths").value = months; 
  
 }
 

</script>
开始日期:<input name="txtStartDate">&nbsp;&nbsp;*格式为2006-01-01<br>
结束日期:<input name="txtEndDate"><br>
相隔月份数:<input name="txtMonths"><br>
<input type="button" value="显示相隔月份数" onClick="javascript:DateDiff(document.getElementById('txtStartDate').value,document.getElementById('txtEndDate').value);">

第二种:
<script>
  function getMonthCZ(dt1,dt2){
    return dt2.getFullYear()*12+dt2.getMonth()-(dt1.getFullYear()*12+dt1.getMonth());
  }
  alert(getMonthCZ(new Date("2004/10/3"),new Date("2006/1/3")))
</script>

posted on 2006-04-03 14:49 汪杰 阅读(1197) 评论(1)  编辑 收藏 引用 所属分类: hengxing网站js

FeedBack:
# re: 计算两日期相隔多少月
2008-04-11 16:58 | xuzhaoyue
我顶!  回复  更多评论
  
只有注册用户登录后才能发表评论。

<2025年4月>
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

常用链接

留言簿(19)

随笔分类(1)

随笔档案(90)

文章分类(727)

文章档案(712)

相册

收藏夹

http://blog.csdn.net/prodigynonsense

友情链接

最新随笔

搜索

  •  

积分与排名

  • 积分 - 475128
  • 排名 - 6

最新随笔

最新评论

阅读排行榜

评论排行榜