Javascript 101: Генерация случайного числа
Приветствую вас, коллеги-кодеры и технические энтузиасты! Сегодня мы погружаемся в удивительный мир фрагментов кода. 🚀
Если вы провели какое-то время в обширной сфере программирования, вы, вероятно, сталкивались с этими небольшими фрагментами кода, которые очень быстро решают распространенные проблемы или добавляют изящные функции в ваши проекты. Мы говорим о тех надежных компаньонах, которые делают наш путь кодирования более плавным и эффективным.
Здесь мы рассмотрим некоторые из наиболее часто используемых фрагментов кода, которые могут понадобиться вам однажды, независимо от того, являетесь ли вы опытным профессионалом или только начинаете свое приключение в программировании. Эти фрагменты наверняка пригодятся и сэкономят вам драгоценное время и усилия.
- Создание случайного числа:
function getRandomNumber(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } // Usage example const randomNumber = getRandomNumber(1, 100); console.log(randomNumber); // Output: Random number between 1 and 100
Здесь я использовал встроенную функцию Math.random()
, которая генерирует псевдослучайное десятичное число от 0 (включительно) до 1 (исключительно).
Math.Random() // 0.6252474231132967 Math.Random() // 0.03772396106405407
А когда мы умножаем его на целое число N, он масштабирует диапазон сгенерированного случайного числа от 0 (включительно) до N (исключительно).
Math.random()*8 // 2.27924218449437 Math.random()*80 // 13.722102542882197
(max - min + 1)
вычисляет диапазон возможных значений, вычитая минимальное значение (min
) из максимального значения (max
) и добавляя 1 (чтобы включить верхнюю границу). Вы можете отбросить 1, если хотите исключить верхнюю границу.
(5 - 0 + 1) // 6 ==> Math.random()*6 will generate in range (0-5) /* Without the 1 */ (5 - 0) // 5 ==> Math.random()*5 will be in range (0-4)
Функция Math.floor()
используется для округления десятичного числа, полученного на предыдущем шаге, до ближайшего целого числа. Это гарантирует, что окончательный результат будет целым числом.
Math.random()*5 // Will look like - 1.359376633672147 /* We need to drop the decimal part*/ Math.floor(Math.random()*5) // 1
Math.floor(Math.random() * (max - min + 1)) + min
: Наконец, добавляя минимальное значение (min
) к случайно сгенерированному целому числу, мы сдвигаем диапазон, чтобы он начинался с минимального значения и заканчивался максимальным значением. В результате получается случайное целое число в желаемом диапазоне, включая как минимальное, так и максимальное значения.
/* min=0, max=5 */ Math.floor(Math.random()*5) // 2 || 3 || 0 /* To generate in a range (5-10) */ Math.floor(Math.random()*(10 - 5 + 1)) + 5 // 6 || 8 || 10
В этом сообщении блога мы рассмотрели генерацию случайных чисел. Не забудьте адаптировать и настроить код в соответствии с вашими конкретными требованиями. Универсальность JavaScript и эти фрагменты кода, несомненно, повысят ваши навыки программирования и продуктивность.
Посмотрите еще несколько историй от меня: