В JavaScript для работы со случайными числами используется встроенный метод Math.random()
. Этот метод возвращает псевдослучайное число с плавающей точкой от 0
(включительно) до 1
(не включительно).
const randomNumber = Math.random();
console.log(randomNumber); // число от 0 до 0.9999...
Получение случайного числа в диапазоне
Чтобы получить случайное число в заданном диапазоне, результат Math.random()
нужно масштабировать.
Случайное целое число от 0 до max
function getRandomInt(max) {
return Math.floor(Math.random() * (max + 1));
}
console.log(getRandomInt(10)); // число от 0 до 10
Случайное целое число в диапазоне от min до max
function getRandomIntInRange(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
console.log(getRandomIntInRange(5, 15)); // число от 5 до 15
Случайное число с плавающей точкой в диапазоне
function getRandomFloatInRange(min, max) {
return Math.random() * (max - min) + min;
}
console.log(getRandomFloatInRange(1.5, 5.5)); // число от 1.5 до 5.5
Генерация случайного элемента массива
const items = ['apple', 'banana', 'cherry', 'date'];
function getRandomItem(array) {
const index = Math.floor(Math.random() * array.length);
return array[index];
}
console.log(getRandomItem(items));
Генерация случайной строки
function getRandomString(length) {
const chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
let result = '';
for (let i = 0; i < length; i++) {
result += chars.charAt(Math.floor(Math.random() * chars.length));
}
return result;
}
console.log(getRandomString(8)); // случайная строка из 8 символов
Генерация случайного булевого значения
function getRandomBoolean() {
return Math.random() < 0.5;
}
console.log(getRandomBoolean()); // true или false
Особенности Math.random()
- Возвращает псевдослучайные числа (не криптографически безопасные).
- Генератор основан на алгоритмах браузера и не имеет настроек для указания начального значения (seed).
- Для криптографической генерации в современных браузерах есть
crypto.getRandomValues()
.
Math.random()
в JavaScript — это базовый инструмент для работы со случайными числами. Его удобно использовать при создании генераторов чисел, перемешивании массивов, случайном выборе элементов или создании простых идентификаторов. Несмотря на простоту, этот метод покрывает большинство повседневных задач, связанных со случайностью в клиентских скриптах.