Как получить несколько рандомных(не повторяющихся) чисел?

Нужно вывести 3 разных числа с диапазона Х чисел.
Не знаю как это сделать. Пробовал через if, но понял что это не верно и не практично, так как диапазон Х чисел может изменяться.

UPD:
Вот так я могу получить только одно число из заданного диапазона. Но мне нужно получить 3 числа.
$(document).ready(function() {
    function randomInteger(min, max) {
    var rand = min - 0.5 + Math.random() * (max - min + 1)
    rand = Math.round(rand);
    return rand;
    }


Решение:
$(document).ready(function() {
     //Example, including customisable intervals [lower_bound, upper_bound)
     var limit = 3,
         amount = 3,
         lower_bound = 1,
         upper_bound = { % count($articles) %
         },
         unique_random_numbers = [];
     if (amount > limit) limit = amount;
     while (unique_random_numbers.length < limit) {
         var random_number = Math.round(Math.random() * (upper_bound - lower_bound) + lower_bound);
         if (unique_random_numbers.indexOf(random_number) == -1) {
             // Yay! new random number
             unique_random_numbers.push(random_number);
         }

         document.getElementById('a' + random_number).style.display = 'block';
     }
 });
  • Вопрос задан
  • 551 просмотр
Решения вопроса 1
kn1ght_t
@kn1ght_t
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
mlnkv
@mlnkv
JavaScript Developer
function getRandArr(min, max, amount) {
  var arr = [], j, x, i
  while (max >= min) { arr.push(max--) }
  for (i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
  return arr.slice(0, amount)
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы