Javascript 如何添加前导“;0“;到日期字符串的月/日?

Javascript 如何添加前导“;0“;到日期字符串的月/日?,javascript,jquery,date,datepicker,Javascript,Jquery,Date,Datepicker,所以我写了一个方法,用一个数字减去当前日期的月数 我正在尝试找出如何在少于10个月的月份前面添加“0”。此外,在少于十天的日子里,我如何在前面添加“0” 当前,当它返回对象时(2012-6-9)。它返回6和9,前面没有“0”,有人能告诉我怎么做吗 这是我的密码 lastNmonths = function(n) { var date = new Date(); if (n <= 0) return [date.getFullYear(), date.get

所以我写了一个方法,用一个数字减去当前日期的月数

我正在尝试找出如何在少于10个月的月份前面添加“0”。此外,在少于十天的日子里,我如何在前面添加“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('-');
};
lastnmoths=函数(n){
变量日期=新日期();
if(n0)
date.setFullYear(date.getFullYear()-years);
如果(月数>0){
如果(月>=date.getMonth()){
date.setFullYear(date.getFullYear()-1);
月数=12个月;
date.setMonth(date.getMonth()+月);
}否则{
date.setMonth(date.getMonth()-months);
}
}
}
return[date.getFullYear(),date.getMonth()+1,date.getDate()].join('-');
};

您可以编写如下小函数:

function pad(n) {return (n<10 ? '0'+n : n);}
请在“0”处尝试:

month=date.getMonth()+1<10?“0'+date.getMonth()+1:date.getMonth()+1
return[date.getFullYear(),month,date.getDate()].join('-');

如果n<10,也可以使用以下方法避免测试:

("0" + (yourDate.getMonth() + 1)).slice(-2)
有关如何将日期转换为字符串的建议,请参见
   month = date.getMonth() + 1 < 10 ? '0' + date.getMonth() + 1 : date.getMonth() + 1
   return [date.getFullYear(), month, date.getDate()].join('-');
("0" + (yourDate.getMonth() + 1)).slice(-2)