Сегодня мы продолжим наш курс по JavaScript для начинающих. В этом уроке мы разберем, как работать с числами, выполнять математические операции, использовать методы объекта Math и правильно преобразовывать типы данных.
Математические операции
Числа это основа любой программы. В JavaScript они используются для расчетов, анимаций, игр и многого другого. Давайте изучим базовые операции.
1. Базовые операторы
JavaScript поддерживает стандартные арифметические операторы:
+(сложение),-(вычитание),*(умножение),/(деление),%(остаток от деления),**(возведение в степень).
Примеры:
console.log(5 + 2); // 7 console.log(10 - 3); // 7 console.log(4 * 2); // 8 console.log(10 / 2); // 5 console.log(10 % 3); // 1 (остаток от деления 10 на 3) console.log(2 ** 3); // 8 (2 в степени 3)
2. Инкремент и декремент
Эти операторы увеличивают или уменьшают значение переменной на 1.
++(инкремент),--(декремент).
Важно:
- Префиксная форма (
++a) сначала изменяет значение, затем возвращает его. - Постфиксная форма (
a++) возвращает исходное значение, затем изменяет его.
Пример:
let a = 5; console.log(a++); // 5 (сначала выводим, потом увеличиваем) console.log(a); // 6 let b = 10; console.log(++b); // 11 (сначала увеличиваем, потом выводим)
3. Комбинированные операторы
Для сокращения записи можно использовать операторы вида +=, -=, *=, /=.
Пример:
let x = 10; x += 5; // x = x + 5 → 15 x *= 2; // x = x * 2 → 30 console.log(x); // 30
Методы объекта Math
Объект Math содержит полезные методы для работы с числами. Рассмотрим ключевые из них.
1. Округление чисел
Math.round(x)— округляет до ближайшего целого.Math.ceil(x)— округляет вверх («к потолку»).Math.floor(x)— округляет вниз («к полу»).Math.trunc(x)— отбрасывает дробную часть (работает какfloorдля положительных чисел).
Пример:
console.log(Math.round(3.7)); // 4 console.log(Math.ceil(2.1)); // 3 console.log(Math.floor(5.9)); // 5 console.log(Math.trunc(-3.9)); // -3 (в отличие от floor, который дал бы -4)
2. Генерация случайных чисел
Math.random() возвращает случайное число от 0 (включительно) до 1 (не включая).
Чтобы получить число в заданном диапазоне, используйте формулу:
Math.random() * (max - min) + min.
Пример:
// Случайное число от 1 до 10: let randomNumber = Math.floor(Math.random() * 10) + 1; console.log(randomNumber);
3. Другие полезные методы
Math.max(a, b, c...)— возвращает наибольшее число.Math.min(a, b, c...)— возвращает наименьшее число.Math.pow(a, b)— возводитaв степеньb.Math.sqrt(a)— вычисляет квадратный корень.
Пример:
console.log(Math.max(5, 10, 3)); // 10 console.log(Math.min(5, 10, 3)); // 3 console.log(Math.pow(2, 3)); // 8 console.log(Math.sqrt(16)); // 4
Преобразование типов данных
Часто данные приходят в виде строк (например, из полей ввода), и их нужно преобразовать в числа. Рассмотрим способы.
1. Явное преобразование
Number(value)— преобразует строку в число. Если строка содержит нечисловые символы (кроме пробелов в начале/конце), вернетNaN.parseInt(str)— извлекает целое число из строки.parseFloat(str)— извлекает дробное число из строки.
Примеры:
console.log(Number('123')); // 123 console.log(Number('123.45')); // 123.45 console.log(Number('123abc')); // NaN console.log(parseInt('100px')); // 100 console.log(parseFloat('12.5em')); // 12.5
2. Унарный плюс
Сокращенный способ преобразовать строку в число, поставить перед ней +.
Пример:
let str = '50'; let num = +str; // 50 (число) console.log(typeof num); // number
3. Особенности преобразований
NaN(Not a Number) — результат ошибки при преобразовании.- Проверить на
NaNможно с помощьюisNaN(value).
Пример:
let result = Number('JavaScript'); console.log(result); // NaN console.log(isNaN(result)); // true
Практические задачи
Закрепим знания на практике! Решите задачи ниже.
Задача 1: Площадь круга
Напишите функцию circleArea(radius), которая вычисляет площадь круга по формуле π * r². Используйте Math.PI.
Решение:
function circleArea(radius) { return Math.PI * radius ** 2; } console.log(circleArea(5)); // ≈78.54
Задача 2: Случайный пароль
Создайте функцию generatePassword(length), которая генерирует пароль из заданного количества цифр.
Решение:
function generatePassword(length) { let password = ''; for (let i = 0; i < length; i++) { password += Math.floor(Math.random() * 10); } return password; } console.log(generatePassword(6)); // Например, "283905"
Задача 3: Конвертер валют
Напишите код, который запрашивает у пользователя сумму в долларах и конвертирует ее в евро (курс: 1 USD = 0.93 EUR). Используйте prompt и alert.
Решение:
let dollars = prompt('Введите сумму в USD:'); let euros = Number(dollars) * 0.93; alert(`${dollars} USD = ${euros.toFixed(2)} EUR`);
Заключение
Сегодня мы изучили работу с числами в JavaScript. Выполнили математические операции, освоили методы объекта Math и научились преобразовывать типы данных. Обязательно потренируйтесь на задачах.
Полный курс «JavaScript для начинающих» доступен здесь — https://max-gabov.ru/javascript-dlya-nachinaushih
Поддержка автора осуществляется с помощью специальной формы ниже, предоставленной сервисом «ЮMoney». Все платёжные операции выполняются на защищённой странице сервиса, что обеспечивает их корректность и полную безопасность.


