首页 > javascript Date 中的31号去取出来下一个月的月份不对?

javascript Date 中的31号去取出来下一个月的月份不对?

为什么今天是31号 取下一个月的月份出来的月份不对啊! 有什么好的解决方式吗?我应该是6月份才对啊。为什么是7?
为什么1-30号出来的就没问题!

function getDate(n) {
     var oDate = new Date();
     oDate.setMonth(oDate.getMonth() + n);
     return {
        y: oDate.getFullYear(),
        m: oDate.getMonth()+1
    }
}
getDate(1)

setmonth的时候加1,return又加1,你确定30号的对吗?


原因有人说了,31号的锅,解决可以先把日期置为1,再调整月份,年份最后获得,以防月份进位


计算月份日期最简单的是专成时间戳然后加上一天的值在转成日期


因为六月份没有31号,所以加了一个月,到7月了。

【热门文章】
【热门文章】