通过添加零来维护字符串长度

时间:2015-12-01 13:39:35

标签: javascript jquery

我需要传递一个至少长度为10的字符串。如何添加0来填充剩余的空格,以便它的长度始终为10?

这是我尝试的但是没有按预期工作。

var passString = "Abcdefg";
if (passString.length<10){
      var len = passString.length;
      var missing = 10-len;
      passString = passString + Array(missing).join("0")
}

3 个答案:

答案 0 :(得分:1)

请尝试以下代码

var passString = "Abcdefg";
if (passString.length<10){
      var len = passString.length;
      var missing = 10-len;
      passString =passString+  new Array(missing + 1).join("0");
}

感谢

答案 1 :(得分:1)

你可以在一行中完成(我喜欢给一个衬垫)

passString = (passString + Array(11).join('0')).substr(0,Math.max(10,passString.length))

答案 2 :(得分:1)

Concat在字符串末尾加零,并使用slice或substring或substr。

var passString = "ABC";
var fixed = (passString + "0000000000").slice(0,10);
console.log(fixed);

根据评论,我跳过if,但你可以做一个基本的if

var passString = "ABC";
var fixed = passString;
if (passString.length<10) {
    fixed = (passString + "0000000000").slice(0,10);
}
console.log(fixed);

或三元运算符

var passString = "ABC";
var fixed = passString >=10? passString : (passString + "0000000000").slice(0,10);
console.log(fixed);

或只是用if

覆盖原文
var passString = "ABC";
if (passString.length<10) {
    passString = (passString + "0000000000").slice(0,10);
}
console.log(passString);