使用js算出两个月之间差几个月

项目需求,算出两个月之间差几个月,不足一月按一个月算,即8月1日到9月2日就算两个月了,8月1日到9月1日就算一个月了,从网上找点资料,接合自己的需求,写出自己的js方法,现提供出来,供大家参考,例如开始日期为20110801,截止日期为20110902

function setRateValidity(){
var beginDate = document.getElementById("crlimit:beginDate").value;
var endDate = document.getElementById("crlimit:endDate").value;
if(beginDate!=""&&endDate!=""&&endDate>=beginDate&&(endDate-beginDate)<=10000){
var startDate = new Date(beginDate.substr(0,4),beginDate.substr(4,2)-1,beginDate.substr(6,2));//月份是从0开始算的
var startDateUTC = Date.UTC(startDate.getFullYear(),startDate.getMonth(),startDate.getDate());
var end = new Date(endDate.substr(0,4),endDate.substr(4,2)-1,endDate.substr(6,2));
var endDateUTC = Date.UTC(end.getFullYear(),end.getMonth(),end.getDate()); var workmonthnum = 0;
for (var i=startDateUTC;i<=endDateUTC ; i=i+86400000 ){
var days = new Date(i);
if (days.getDate()==1){
workmonthnum++;
}
}
if(beginDate.substr(6,2)=='01'&&endDate.substr(6,2)=='01'){
workmonthnum = workmonthnum -1;
}
if(beginDate.substr(0,4)==endDate.substr(0,4)&&beginDate.substr(4,2)==endDate.substr(4,2)){
workmonthnum = 1;
}
document.getElementById("crlimit:rateValidity").value = workmonthnum;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值