“每个月20号到下个月19号算一个月”这是自然月吗
解决方案 »
- 求Microsoft Visual Studio.Net(VS2005/2008)下好用的JavaScript助手
- 为什么处理语句写在子函数中就不行了?
- 有什么方法能获取表格中的某一行的所有值
- 有没有好的JS混淆器,推荐一点给小弟,谢谢各位
- +function ($)前面的+号是什么意思?
- jquery如何获取table 某tr td下div的值和设置其值
- 请这里的高手帮忙,这个问题在无忧JS论坛没人会!
- ***********奇怪,我的树形部分的滚动条出不来?**************50分******
- 如何实现在鼠标经过的地方实现注释??
- 心情好,发分
- 求教动态生成下拉框内的元素的方法
- 文本框的readonly属性在JS中怎么用?
//传回公历 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>