我有3个约会: 现在的日期= 11/7/2018
开始日期= 2018/11/14
结束日期= 2019/11/13
付款是每3个月一次。如果付款方式为“预付款”,则租金应于14日支付。
Array = [8,89,92,92]
如果付款类型=“欠款”,则应在13号支付租金。
由于开始日期为11/14,所以付款日期为2/13 / 2019、5 / 13 / 2019、8 / 13/2019和11/13/2019。
Array = [99,88,91,91]
我需要创建一个从当前日期到首次付款日期之间的天数数组。我试过的:
const start = "11/14/2018";
const end = "05/13/2021 ";
const dates = [];
const mstart = moment(start, "MM/DD/YYYY");
const mend = moment(end, "MM/DD/YYYY");
for (var i = 0; mstart <= mend; i++) {
if (selectedPayType === "A") {
let Q = mstart.clone();
mstart.add(3, 'months');
const daysInMonth = mstart.diff(Q, 'days');
dates.push(daysInMonth);
}
if (selectedPayType === "B") {
//code goes here....
}
console.log(dates);
我对第二部分感到困惑,不知道如何定义。任何帮助表示赞赏。谢谢。
答案 0 :(得分:0)
我按照以下方式进行操作,因为日期总是从现在起3个月,所以在日期前加上3个月。
if (selectedPayType === "B") {
startDateC.add(3, 'months');
startDateC.subtract(1,'days');
var futureLease = startDateC.diff(presentDateC, 'days');
array.unshift(futureLease);
for (var i = 1; i < array.length; i++) {
(array[i] += array[i - 1]);
}
console.log(array);
}