Работа с объектом Math: математические вычисления и генерация случайных чисел
🔢 Введение в объект Math
Объект Math в JavaScript — это встроенный набор математических констант и функций для выполнения вычислений. Он не требует создания экземпляра (new Math() не работает!), а значит, его методы и свойства доступны сразу.
console.log(Math.PI); // 3.141592653589793
console.log(Math.sqrt(16)); // 4
💡 Совет:
Math— статический объект, поэтому все его методы вызываются напрямую (например,Math.abs(), а неmyMath.abs()).
📏 Основные методы для вычислений
Округление чисел
Math.round(x)→ округляет до ближайшего целого.Math.ceil(x)→ округляет вверх.Math.floor(x)→ округляет вниз.Math.trunc(x)→ отбрасывает дробную часть (какfloorдля положительных чисел).
console.log(Math.round(3.7)); // 4
console.log(Math.ceil(3.2)); // 4
console.log(Math.floor(3.9)); // 3
console.log(Math.trunc(-3.9)); // -3
Минимум и максимум
Math.min(a, b, c, ...)→ возвращает наименьшее число.Math.max(a, b, c, ...)→ возвращает наибольшее число.
console.log(Math.min(10, 5, 42)); // 5
console.log(Math.max(10, 5, 42)); // 42
Возведение в степень
Math.pow(x, y)→xв степениy.x ** y→ современный аналог (ES6).
console.log(Math.pow(2, 3)); // 8
console.log(2 ** 3); // 8
🎲 Генерация случайных чисел
Метод Math.random() возвращает псевдослучайное число от 0 (включительно) до 1 (не включительно).
console.log(Math.random()); // 0.123456789...
Случайное число в диапазоне
Чтобы получить число от min до max:
function getRandom(min, max) {
return Math.random() * (max - min) + min;
}
console.log(getRandom(5, 10)); // 5.123... до 9.999...
Случайное целое число
Добавляем Math.floor():
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
console.log(getRandomInt(1, 6)); // 1, 2, 3, 4, 5 или 6
🎯 Пример: Создание кубика для настольной игры:
javascript const diceRoll = () => getRandomInt(1, 6); console.log(`Выпало: ${diceRoll()}`);
🔢 Полезные математические функции
Квадратный корень и логарифмы
Math.sqrt(x)→ квадратный корень изx.Math.log(x)→ натуральный логарифм.Math.log2(x)→ логарифм по основанию 2.
console.log(Math.sqrt(25)); // 5
console.log(Math.log(Math.E)); // 1
Тригонометрия
Math.sin(x),Math.cos(x),Math.tan(x)→ синус, косинус, тангенс (угол в радианах!).Math.PI→ число π (3.1415...).
console.log(Math.sin(Math.PI / 2)); // 1 (90 градусов)
🧮 Константы в Math
Объект хранит ключевые математические константы:
| Константа | Значение | Описание |
|---|---|---|
Math.PI |
3.141592653589793 | Число π (пи) |
Math.E |
2.718281828459045 | Число Эйлера (e) |
Math.SQRT2 |
1.4142135623730951 | √2 |
Math.LN2 |
0.6931471805599453 | Натуральный логарифм 2 |
console.log(Math.PI); // 3.141592653589793
🚀 Практика: Игра "Угадай число"
Создадим простую игру, где компьютер загадывает число от 1 до 100, а пользователь пытается угадать.
const secretNumber = getRandomInt(1, 100);
let guess = prompt("Угадай число от 1 до 100!");
if (parseInt(guess) === secretNumber) {
alert("🎉 Ты угадал!");
} else {
alert(`Ошибка! Правильное число: ${secretNumber}`);
}
🔥 Заключение
Теперь ты знаешь, как использовать Math для вычислений, округления и генерации случайных чисел. Этот объект — мощный инструмент в арсенале JavaScript-разработчика!
Если хочешь глубже разобраться в математике JavaScript, загляни на YouTube-канал Данилы Бежина, где он объясняет сложные темы с юмором и на примерах: https://www.youtube.com/@DanilaBezhin.
Попробуй применить эти методы в своих проектах — например, в калькуляторах, играх или генераторах паролей! 💻✨