比如输入 2021-11-18 11:08:59
输出
function getPreMonth(date) {
if (date == "Invalid Date") {
return "无期日期";
}
switch (date.getMonth()+1) {
case 1:
date.setFullYear(date.getFullYear() - 1);
date.setMonth(11);
break;
case 3:
var run = date.getFullYear() % 4 == 0 && date.getFullYear() % 100 != 0 || date.getFullYear() % 400 == 0;
if (date.getDate() > (run ? 29 : 28)) {
return "上个月无当前时间";
} else {
date.setMonth(date.getMonth() - 1);
}
break;
case 5:
case 7:
case 10:
case 12:
//大月
if (date.getDate() > 30) {
return "上个月无当前时间";
} else {
date.setMonth(date.getMonth() - 1);
}
break;
default:
//其它小月包含一个8月
date.setMonth(date.getMonth() - 1);
}
return date;
}
var date = new Date("2020-12-30");
date = getPreMonth(date);
document.write(date.toLocaleString());
2021-10-18 11:08:59