function getFutureMonthDay(sourceDate, monthNum = 3) {
const d = new Date(sourceDate);
//来源
const SY = d.getFullYear();
const SM = d.getMonth();
const SD = d.getDate();
//结果
const mydate = new Date(SY, String(SM + monthNum).padStart(2, '0'), String(SD).padStart(2, '0'));
const yyyy = mydate.getFullYear();
let MM = (mydate.getMonth() + 1).toString().padStart(2, '0');
let dd = mydate.getDate().toString().padStart(2, '0');
//如果月份是2月,就进行闰年和非闰年处理,防止出现类似2月30的情况
if (MM == 2 && dd > 28) {
if (yyyy % 100 == 0 && yyyy % 400 == 0) {
dd = 29
} else if (yyyy % 100 != 0 && yyyy % 4 == 0) {
dd = 29;
} else {
dd = 28;
}
}
console.log(yyyy, '-', MM, '-', dd);
return `${yyyy}-${MM}-${dd}`;
}
js自然月偏移。获取三个月后的日期,获取某个日期几个月前或者几个月后是哪天
于 2022-06-16 15:13:29 首次发布
关键词由CSDN通过智能技术生成