如果数字小于10,则显示前导零

Nic*_*iwi 60 javascript math numbers digits

可能重复:
JavaScript等效于printf/string.format
如何使用JavaScript创建Zerofilled值?

我在变量中有一个数字:

var number = 5;
Run Code Online (Sandbox Code Playgroud)

我需要将该数字输出为05:

alert(number); // I want the alert to display 05, rather than 5.
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

我可以手动检查数字并将其作为字符串添加0,但我希望有一个JS功能可以做到吗?

Chr*_*tow 133

没有内置的JavaScript函数可以做到这一点,但你可以很容易地编写自己的函数:

function pad(n) {
    return (n < 10) ? ("0" + n) : n;
}
Run Code Online (Sandbox Code Playgroud)

编辑:

同时,还有一个本机JS函数可以做到这一点.请参见String#padStart

console.log(String(5).padStart(2,0));
Run Code Online (Sandbox Code Playgroud)

  • 或者``n <10 && n> = 0 ...`,所以你最终不会得到"0-5". (11认同)
  • 照顾到负数也高达10:函数pad(n){if(n <10&n> = 0)返回("0"+ n); if(n <0&n> -11)返回(" - 0"+ Math.abs(n)); 返回n; } (2认同)

Waz*_*azy 12

试试这个

function pad (str, max) {
  return str.length < max ? pad("0" + str, max) : str;
}

alert(pad("5", 2));
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/

要么

var number = 5;
var i;
if (number < 10) {
    alert("0"+number);
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/

  • 阅读他的最后一句......他知道如何做到这一点,他正在寻找我相信的格式功能. (2认同)