如何在JavaScript中将7格式化为'07'?

Tim*_*Tom 3 javascript jquery

我有一天,一个月和一年的JavaScript.我需要我的一天是2位数,我的月份也是2位数,年份是4位数.

例如.如果是月份7它应该给我字符串'07'.如果是,12那么它应该返回'12'.

我谷歌,但我只找到toFixedtoPrecision,这两者具有不同的功能.我该如何格式化?

小智 9

你可以这样做......

mth = ("0" + mth).slice(-2);
Run Code Online (Sandbox Code Playgroud)

另外,请记住几个月是0基于的,所以你可能想要这个......

mth = ("0" + ++mth).slice(-2);
Run Code Online (Sandbox Code Playgroud)

  • +1聪明......但不确定它是最可读的. (2认同)

the*_*dox 5

var newmonth = month < 10 ? '0' + month : month; // if month is number
                                                 // else use parseInt(month, 10)
Run Code Online (Sandbox Code Playgroud)

您还可以创建一般用途的功能:

function formatting(target) {
  return target < 10 ? '0' + target : target;
}
Run Code Online (Sandbox Code Playgroud)

您可以使用上述方法进行月份和日期.

并获得一个4位数的年份,你可以使用 .getFullYear()

  • 如果你使用`parseInt()`使用radix:`parseInt(month,10)`. (7认同)
  • *大声笑*这是一个单线的很多评论;) (5认同)
  • 为什么需要`parseInt`? (3认同)
  • 此外,三元运算符语法是'a?b:c`,你输入`a:b:c`.我试图发布一个编辑,但它说我的编辑太短了.:P (3认同)