Javascript代码多次使用相同的数字

时间:2012-02-25 19:28:29

标签: php javascript html

这个php生成0次或更少次

str_repeat('0', mt_rand(1, 10))

我怎样才能在html的javascript中做到这一点

我只想要多次

5 个答案:

答案 0 :(得分:10)

您可以使用“join an array”hack来重复一个字符串,使用Math.random()来获取一个随机数,并使用任何按位运算来向下舍入一个数字,所以简洁的方法是:

Array(Math.random() * 11 + 1 | 0).join('0')

答案 1 :(得分:1)

// Function simulating PHP str_repeat()
function str_repeat(str, multiplier) {
  return new Array(multiplier + 1).join(str);
}

// Generate the string
var number_of_times = Math.floor(Math.random()*11);
var my_repeated_string = str_repeat('0', number_of_times);

// Put the string inside a HTML element
document.getElementById("your_element_id").innerHTML = my_repeated_string;

答案 2 :(得分:1)

好的,这就是......

var $yourString;

for(var i=0;i<10;i++) { 
  $yourString += "0"; 
}

这是你想要做的吗?你对另一个答案的评论说你要多次生成0,而不是随机数。这样做并将其构建为一个字符串。不知道你为什么这么做。

希望这有帮助!

答案 3 :(得分:1)

我喜欢数组连接hack(upvoted it),但这是一个功能方式:

function str_repeat (str, n) {
    n = parseInt(n, 10);

    if (--n) {
        str += str_repeat(str, n);
    }

    return str;
}


console.log(str_repeat('0', 10));  // 0000000000

答案 4 :(得分:1)

可重复使用的部分:

function GetRandom(min, max)
{
    return Math.round(Math.random() * (max - min)) + min;
}

function CreateRandomRepeat(text, min, max)
{
    var repeat = [];

    for (var index = 0; index < GetRandom(min, max); index++)
    {
        repeat[index] = text;
    }

    return repeat.join('');
}

解决方案:

CreateRandomRepeat('0', 1, 10);