как генерировать случайные числа в заданном диапазоне в javascript
год назад
Nikolai Gagarinov
Ответы
Вот базовая функция, которая генерирует случайное целое число в заданном диапазоне, например от min до max (включительно):
В функции getRandomInt происходит следующее:
-
Округление
minиmax:Math.ceil(min)— округляетminдо ближайшего большего целого, чтобы гарантировать, что минимальное значение не будет меньше указанного.Math.floor(max)— округляетmaxдо ближайшего меньшего целого, чтобы максимальное значение не превышало указанное.
-
Генерация случайного числа:
Math.random()возвращает число от 0 (включительно) до 1 (исключительно).- Умножая
Math.random()на(max - min + 1), мы получаем значение от 0 до(max - min)(включительно). - Применяя
Math.floor(), мы отбрасываем дробную часть, что даёт нам целое число в диапазоне от0до(max - min). - В конце, добавляем
min, чтобы сместить диапазон, так что он становится отminдоmax(включительно).
Если вам необходимо получить случайные числа с плавающей запятой в заданном диапазоне, вы можете использовать следующую функцию:
Если вы хотите получать случайные значения из массива без повторений, можно использовать алгоритм shuffle (перетасовка), чтобы перетасовать массив, а затем брать из него значения.
Если вам необходимо генерировать псевдослучайные числа с возможностью воспроизведения (например, для тестирования), вы можете использовать такие библиотеки, как seedrandom.
год назад
Ivan Gagarinov
Похожие вопросы





