Javascript生成0到75之间的随机数

时间:2012-09-18 01:34:02

标签: javascript

我使用的是这样的东西: alert("Random number is: "+ Math.floor(Math.random() * 75) + 0);。 要创建0到75之间的随机数。任何想法如何创建0到75之间的随机数,这不是此逗号分析字符串中的数字之一: $not_these_numbers = "17,26,52,75";

2 个答案:

答案 0 :(得分:4)

生成数字数组(0-75,不包括那些数字),然后生成随机索引:

var exclude = "17,26,52,75".split(',');
var numbers = [];

for (var i = 0; i <= 75; i++) {
    if (exclude.indexOf(i+'') == -1)
        numbers.push(i);
}

// will never be one of the numbers in exclude array
var random_number = numbers[Math.floor(Math.random() * numbers.length)];

答案 1 :(得分:2)

您可以使用对象:

function getRandLimited() {
  var invalid = { 17:17, 26:26, 52:52, 75:75};
  var rand;
  do {
    rand = Math.floor(Math.random() * 76);
  } while (rand in invalid);
  return rand;
}