Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在字符串前面添加零_Javascript_String_Numbers - Fatal编程技术网

Javascript 在字符串前面添加零

Javascript 在字符串前面添加零,javascript,string,numbers,Javascript,String,Numbers,我需要你的帮助 我想创建一个函数,在数字前面加上一些零。总字符串应具有的最大位数为6。以下是一些例子: 9 -> 000009 14 -> 000014 230 -> 000230 1459 -> 001459 21055 -> 021055 987632 -> 987632 (Do nothing, there's already 6 digits) 我已经使用SugarJSAPI很长一段时间了,它们的填充功能非常有效 等等

我需要你的帮助

我想创建一个函数,在数字前面加上一些零。总字符串应具有的最大位数为6。以下是一些例子:

     9 -> 000009
    14 -> 000014
   230 -> 000230
  1459 -> 001459
 21055 -> 021055
987632 -> 987632 (Do nothing, there's already 6 digits)

我已经使用SugarJSAPI很长一段时间了,它们的填充功能非常有效


等等。

以下内容将在数字字符串中添加一个零,直到长度等于6

var s = '9876'
while(s.length < 6){
  s = '0' + s
}
alert(s)
var s='9876'
而(s.长度<6){
s='0'+s
}
警报

您需要将数字转换为字符串。然后我将该字符串拆分为一个数组,然后将“0”添加到该数组的前面,直到长度为6。然后加入。请查看此repl或查看以下代码:

var num=14;
var lengthOfNum=6;
var numString=num.toString();
var numArray=numString.split(“”);
var returnString='';
而(numArray.length<6){
Numaray.unshift('0');
}
returnString=numArray.join(“”);

递归解决方案仅供参考:

function padNumberString(numberString) {
    if (numberString.length >= 6) {
        return numberString;
    }
    return padNumberString('0' + numberString);
}

再来一个。这一款适用于:

  • 字符串和数字
  • 处理可变长度,以及
  • 用于选择填充字符
  • 代码:

    以下是一些输入不同的示例结果:

    padZerosToLength(1, 6, 0);       ===>  000001
    padZerosToLength(12, 6, 0);      ===>  000012
    padZerosToLength(123, 6, 0);     ===>  000123
    padZerosToLength(1234, 6, 0);    ===>  001234
    padZerosToLength(12345, 6, 0);   ===>  012345
    padZerosToLength(123456, 6, 0);  ===>  123456
    
    。长度可变:

    padZerosToLength(1, 1, 0);  ===>  1
    padZerosToLength(1, 2, 0);  ===>  01
    padZerosToLength(1, 3, 0);  ===>  001
    padZerosToLength(1, 4, 0);  ===>  0001
    padZerosToLength(1, 5, 0);  ===>  00001
    padZerosToLength(1, 6, 0);  ===>  000001
    
    。并具有不同的填充字符:

    padZerosToLength(1, 6, 0);         ===>  000001
    padZerosToLength(1, 6, 1);         ===>  111111
    padZerosToLength(1, 6, "x");       ===>  xxxxx1
    padZerosToLength(1, 6, ".");       ===>  .....1
    padZerosToLength(1, 6, " ");       ===>       1
    padZerosToLength(1, 6, "\u25CF");  ===>  ●●●●●1
    
    没有任何循环的简单单线解决方案 适用于IE5-11、Firefox、Chrome等。采用整数输入

     function pad(n) { return ("000000" + n).slice(-6); }
    
    运行要测试的代码段:

    
    试验
    功能板(n){return(“000000”+n).slice(-6);}
    功能测试(){
    var n=parseInt(document.getElementById('stdin').value);
    var e=document.getElementById('stdout')。innerHTML+=n+'='+pad(n)+'\n';
    }
    
    一个简单的解决方案是

        function addLeadingZeros (n, length)
        {
         var str = (n > 0 ? n : -n) + "";
         var zeros = "";
          for (var i = length - str.length; i > 0; i--)
             zeros += "0";
         zeros += str;
        return n >= 0 ? zeros : "-" + zeros;
        }
    
    //addLeadingZeros (9, 3) =   "009"
    //addLeadingZeros (15, 3) =  "015"
    //addLeadingZeros (333, 3) = "333"
    

    祝你好运如果您尝试了某些内容,并且遇到了某些需要帮助的特定错误,请告诉我们。请显示您迄今为止尝试过的内容。如果您希望能够动态定义填充长度,则可能重复:
    function pad(n,len){return((新数组(len+1).join('0'))+n.slice(-len);}
    允许动态声明长度的一种更有效的方法:
    函数pad(n,str){return(str+n).slice(-str.length);}
    用法:
    pad(number,'000000')
    通过传递一个静态字符串,可以避免在每次调用时不动态创建字符串。额外的好处:你可以通过任何字符串来传递信息:
    pad(数字“,”)这是Java吗?这个问题被标记为
    JavaScript
    .man.。我没有看到这个,我被选中了。net标记这个问题
    padZerosToLength(1, 6, 0);         ===>  000001
    padZerosToLength(1, 6, 1);         ===>  111111
    padZerosToLength(1, 6, "x");       ===>  xxxxx1
    padZerosToLength(1, 6, ".");       ===>  .....1
    padZerosToLength(1, 6, " ");       ===>       1
    padZerosToLength(1, 6, "\u25CF");  ===>  ●●●●●1
    
     function pad(n) { return ("000000" + n).slice(-6); }
    
        function addLeadingZeros (n, length)
        {
         var str = (n > 0 ? n : -n) + "";
         var zeros = "";
          for (var i = length - str.length; i > 0; i--)
             zeros += "0";
         zeros += str;
        return n >= 0 ? zeros : "-" + zeros;
        }
    
    //addLeadingZeros (9, 3) =   "009"
    //addLeadingZeros (15, 3) =  "015"
    //addLeadingZeros (333, 3) = "333"