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)関数は、それに追加するために数値とパディングの量を取ります。次に、長さが満たされるまで、毎回0を追加してn回ループします。

   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 に答える