如果月份是 1 月 29、30、31,如何在 javascript 中添加下一个订阅日期以避免 2 月的同一日期?

时间:2021-01-14 08:53:45

标签: javascript datetime calendar set

我想从订阅之日起设置下个月的 monthdate

示例:如果今天是 30th January,那么下一个订阅日期应该更改为 30 days after 30th Jan 意味着如果月份不是闰月那么它应该设置为 {{ 1}} 而不是 2nd March

与此同时,当月份为 30th Feb 时,月份应设置为 1 月。

这是我想使用的代码,它可以解决我的 December 问题,但我仍然不确定 Dec to Jan 的事情。

February

1 个答案:

答案 0 :(得分:1)

将当前日期加上 30 天将自动获得 30 天后的下一个实际日期

Date 对象将计算下一个日期,而不管该月有多少天

let someDate = new Date();
let numberOfDays = 30;

someDate.setDate(someDate.getDate() + numberOfDays); 
let dateFormated = someDate.toISOString().substr(0,10);
console.log(dateFormated);

someDate = new Date('2020-09-10');
someDate.setDate(someDate.getDate() + numberOfDays); 
dateFormated = someDate.toISOString().substr(0,10);
console.log(dateFormated);