我看了一些其他问题,没有看到我的具体问题,所以如果有人问过或回答过,请原谅。
我想做的是找出一个简单的“付款”计算器,并提供一些额外的信息,例如第一个付款日期和最后一个付款日期。
在某些情况下,最后一次付款的日期有效,有时则无效。
这是我的代码:
var myDate = new Date();
var odo = document.contract.firstPaymentDate.value;
var n = odo.split("/");
var month = n[0];
var day = n[1];
var year = n[2];
var oldDateObj = new Date(year, month, day);
var newDateObj = new Date(oldDateObj.getTime() + ((document.contract.totalNumberRegularPayments.value - 1)*1209600*1000));
var dd = newDateObj.getDate();
var mm = newDateObj.getMonth();
var y = newDateObj.getFullYear();
var someFormattedDate = mm + '/'+ dd + '/'+ y;
document.contract.lastPaymentDate.value = someFormattedDate;
所以我取第一个付款日期,并加上 1209600 秒乘以付款次数(减去 1,因为他们“已经”支付了第一个付款)。
这是基于从用户可以选择的特定日期开始的。
所以我的例子是 156 次 BiWeekly 付款(因此计算为 155),最长可达 6 年。如果我选择 1 日的日期,我会得到 10/01/2013 作为开始,但 9/11/2019 作为结束(第一个在星期二,最后一个在星期三)。
15 日(2013 年 9 月 15 日 - 星期日 - 至 8/24/2019 - 星期六) 20 日(2013 年 9 月 20 日 - 星期五 - 至 2013 年 8 月 29 日 - 星期四)
因此,由于有时会晚一天,有时会提前一天,所以我不能只 +1var dd = newDateObj.getDate();
我真的对发生的事情感到困惑,我希望那里有人对此有一些经验,或者有人知道我可能做错了什么。
提前感谢您提供的任何帮助。