js setMonth遇到31号,得到的日期是当月1号

js 日期对象 31 号, setMonth 的锅

解决办法,先setDate(1)

let currentDate = new Date();
function getLastShortMonth(date) {
    if (!date) {
        date = currentDate;
    }
    else {
        date = new Date(date);
    }
    date = new Date(date.toString());
    date.setDate(1);
    date.setMonth(date.getMonth() - 1);
    return date.toLocaleString('en-us', { month: 'short' });
}
posted @ 2024-10-31 16:46  vvull  阅读(51)  评论(0)    收藏  举报