0

这里的案例是

我有从 1 到 999 的数字,如果 3 位数不够,我需要准备零

例如。

1 => 001
9=>009
11=> 011
111 =>111

有没有办法完成这种任务?谢谢

4

4 回答 4

2
function get3DigitStr(num) {
  if (num > 99) return num + "";
  var s = "00" + num;
  return s.substr(-3);
}
于 2012-12-13T11:18:22.830 回答
1

pad(number,length)函数需要一个数字和要添加到它的填充量。然后它循环 n 次,每次添加一个 0,直到满足长度。

   function pad(number, length) {
      var str = '' + number;
      while (str.length < length) {
         str = '0' + str;
      }
      return str;
   }

    var results = [];

    for(var i = 0; i < 999; i++){
       results[i] = pad(i,3); 
    }

    console.log(results);
            /* Outputs ["001","002","003","004", "005", "006","007","011","012","013","014","015","111","222", "333"]*/
于 2012-12-13T11:16:40.550 回答
1

尝试这个 :

var value
while ((value+"").length < 3)
    value = "0" + value;
document.write(value);
于 2012-12-13T11:16:42.120 回答
1

试试这个功能:

function add(value) {
    return value.length < 3 ? add("0"+value) : value
}

这里有一些例子:

var newvalue = add("1"); //newvalue = "001"
var newvalue = add("21"); //newvalue = "021"
var newvalue = add("999"); //newvalue = "999"

你可以在这里测试它:DEMO

于 2012-12-13T11:25:21.203 回答