所以我写了一个方法,它需要一个数字并从当前日期减去月数。
我试图弄清楚如何在小于 10 的月份前添加“0”。此外,如何在小于 10 的日期前添加“0”。
目前,当它返回对象时(2012-6-9)。它返回 6 和 9,前面没有“0”,有人可以告诉我怎么做吗?
这是我的代码
lastNmonths = function(n) {
var date = new Date();
if (n <= 0)
return [date.getFullYear(), date.getMonth() + 1 , date.getDate()].join('-');
var years = Math.floor(n/12);
var months = n % 12;
if (years > 0)
date.setFullYear(date.getFullYear() - years);
if (months > 0) {
if (months >= date.getMonth()) {
date.setFullYear(date.getFullYear()-1 );
months = 12 - months;
date.setMonth(date.getMonth() + months );
} else {
date.setMonth(date.getMonth() - months);
}
}
}
return [date.getFullYear(), date.getMonth() + 1, date.getDate()].join('-');
};