2017-04-10 50 views
1

我正在寻找用随机数填充字符串以满足特定长度(即10个字符)。例如:使用javascript填充使用随机数到固定长度的字符串

HAM - > HAM3481259或火鸡 - > TURKEY6324

我已经尝试了一些JavaScript函数,但我不是在所有有太多或没有数字。任何建议将不胜感激。

+0

什么是你有在这里的麻烦?你坚持的是什么?你有什么尝试? “试用一些JavaScript函数”是什么意思? –

+0

如果你需要计算出需要填充的字符数,你可以在检查“str.length%10> 0”之后执行'10 - str.length'(或'10 - (str.length%10) )。 –

回答

3

您可以检查长度并添加一个随机数字,如果小于想要的长度。

function padRandom(string, length) { 
 
    while (string.length < length) { 
 
     string += Math.floor(Math.random() * 10); 
 
    } 
 
    return string; 
 
} 
 

 
console.log(padRandom('HAM', 10)); 
 
console.log(padRandom('TURKEY', 10));

+0

如果我想用白色空间填充此功能,该怎么办?我知道这是可以做到的,但我对功能没有经验,但正在尝试基于实例学习! –

+0

然后添加空格,而不是'Math.floor(Math.random()* 10)' –

+0

如何使它成为领先的,以便所有现有的字符都是正确的? –

0

稍快的版本Nina's answer

function padRandom(string, length) { 
 
    random_number_length = length - string.length; 
 

 
    if (random_number_length > 0) { 
 
     string += randomFixedInteger(random_number_length); 
 
    } 
 

 
    return string 
 
} 
 

 
function randomFixedInteger(length) { 
 
    return Math.floor(Math.pow(10, length-1) + Math.random() * (Math.pow(10, length) - Math.pow(10, length-1) - 1)); 
 
} 
 

 
console.log(padRandom('HAM', 10)); 
 
console.log(padRandom('TURKEY', 10));

相关问题