我需要编写一个带两个日期的函数(startDate,endDate)以月或年为单位计算它们之间的时间(取决于输入)。当找到月数或年数时,我需要迭代一个循环,该循环运行一个非常简单的ajax调用(我正在向Quickbase添加一条记录),用于开始日期和结束日期之间的每个月或者年份。
我已经接受了几次黑客攻击,但是当我试图计算月数时(由于日历日期(即费用有28天等),我遇到了麻烦...我计算了两次之间的时间两天的日期,但我需要数月或数年。
任何帮助将不胜感激!
答案 0 :(得分:4)
开始尝试
function Noofmonths(date1, date2) {
var Nomonths;
Nomonths= (date2.getFullYear() - date1.getFullYear()) * 12;
Nomonths-= date1.getMonth() + 1;
Nomonths+= date2.getMonth() +1; // we should add + 1 to get correct month number
return Nomonths <= 0 ? 0 : Nomonths;
}
答案 1 :(得分:1)
获取date1 year和date2 year。 获得差异并乘以12。 获取date1 month和date2 month。 得到不同。 将差异加在一起。