Javascript 如何在不超过确定限制的情况下完成字符串?

Javascript 如何在不超过确定限制的情况下完成字符串?,javascript,Javascript,我有一个47个数字的序列,如果长度小于47,我必须用0(零)来完成 var numbers = "42297115040000195441160020034520268610000054659"; var numbers_lenght = numbers.length; if (numbers_lenght < 47) numbers = numbers.concat("0"); alert(numbers); var number=“4229711504000019

我有一个47个数字的序列,如果长度小于47,我必须用0(零)来完成

var numbers = "42297115040000195441160020034520268610000054659";
var numbers_lenght = numbers.length;

if (numbers_lenght < 47)
    numbers = numbers.concat("0");

    alert(numbers);
var number=“4229711504000019544116002003452026861000054659”;
var numbers\u lenght=numbers.length;
如果(长度小于47的数字)
数字=数字。concat(“0”);
警报(数字);
但是我想知道一种方法,其中不超过47的补码是字符串,与长度<47无关


如何做到这一点?

你不想仅仅连接1
0
你想添加
47-字符串长度
零,对吗?您可以使用:

var numbers=“123456789123”;
变量编号\u长度=编号.length;
如果(数字长度<47){
数字=数字。concat('0'。重复(47-数字长度))
}
控制台日志(编号)

console.log(“length:,numbers.length)
在现代浏览器上,您可以在此处使用:

padEnd()方法用给定的字符串填充当前字符串(如果需要,请重复),以便生成的字符串达到给定的长度。从当前字符串的末尾(右侧)应用填充

var number=“54321”;
const result=numbers.padEnd(47,'0')

log(result+':'+result.length)有几种方法。你在正确的轨道上。您正在将
“0”
连接到焊盘。你缺少的是重复

有几种方法可以解决这个问题。既然您似乎正在学习,我将从暴力方法开始,以确保您了解这一切是如何工作的

var numbers = "42297115040000195441160020034520268610000054659";
while (numbers.length < 47) {
    numbers = numbers.concat("0");
}
alert(numbers);
更具表现力的是:

var numbers = "42297115040000195441160020034520268610000054659";
numbers = numbers.padEnd(47, "0");

如果您只需将逻辑插入
循环中,似乎就可以完成您想要做的事情:

var number1=“4229711504000019544116002003452026861000054659”;
var number2=“4229711504000019”;
log(padString(编号1,47,“0”);
log(padString(数字2,47,“0”);
函数padString(str、minimumLength、paddingCharacter){
while(str.length}
您的
警报是否故意超出您的
if
语句范围?@Brandon,是的,这就是代码。
numbers=numbers.padEnd(47,'0')
var numbers = "42297115040000195441160020034520268610000054659";
numbers = numbers.padEnd(47, "0");