在jQuery日期中添加0到几个月

时间:2011-08-11 00:36:03

标签: javascript jquery html

我有一个jQuery脚本,它将当前日期返回到文本框中。但是,当只显示一个数字的月份(例如8)时,我希望它在它之前放置一个0(例如08),如果它有2个数字(例如11),则不要在它之前放置0。

我该怎么做?我希望你能理解我的问题。这是我的jQuery代码:

var myDate = new Date();
var prettyDate =myDate.getDate() + '' + (myDate.getMonth()+1) + '' + myDate.getFullYear();
$("#date").val(prettyDate);

6 个答案:

答案 0 :(得分:30)

( '0' + (myDate.getMonth()+1) ).slice( -2 );

示例: http://jsfiddle.net/qaF2r/1/

答案 1 :(得分:2)

我不喜欢这么多字符串连接:

var month = myDate.getMonth()+1,
    prettyData = [
        myDate.getDate(), 
        (month < 10 ? '0' +  month : month), 
        myDate.getFullYear()
    ].join('');

答案 2 :(得分:1)

您可以使用以下内容:

function addZ(n) {
  return (n < 10? '0' : '') + n;
}

答案 3 :(得分:0)

var myDate = new Date();
var newMonth = myDate.getMonth()+1;
var prettyDate =myDate.getDate() + '' + (newMonth < 9 ? "0"+newMonth:newMonth) + '' +         myDate.getFullYear();
$("#date").val(prettyDate);

答案 4 :(得分:0)

有许多JS库提供了良好的字符串格式。这个是c#风格。 http://www.masterdata.dyndns.org/r/string_format_for_javascript/

答案 5 :(得分:0)

(myDate.getMonth() + 1).toString().replace(/(^.$)/,"0$1")

我喜欢正则表达式:)