В этом руководстве вы узнаете, как использовать арифметические операторы JavaScript для выполнения вычислений.
Введение
JavaScript поддерживает следующие стандартные арифметические операторы:
Оператор | Знак |
---|---|
Сложение | + |
Вычитание | - |
Умножение | * |
Деление | / |
Арифметический оператор принимает числовые значения в качестве операндов и возвращает одно числовое значение. Числовые значения могут быть литералами или переменными.
Оператор сложения(+)
Оператор сложения возвращает сумму двух значений. Например, в следующем примере оператор сложения используется для вычисления суммы двух чисел:
let sum = 10 + 20; console.log(sum); // 30
Также вы можете использовать оператор сложения с двумя переменными. Например:
let netPrice = 9.99, shippingFee = 1.99; let grossPrice = netPrice + shippingFee; console.log(grossPrice);
Выход:
11.98
Если какое-либо значение является строкой, оператор сложения использует следующие правила:
- Если оба значения являются строками, вторая строка объединяется с первой.
- Если одно значение является строкой, оно неявно преобразует числовое значение в строку и объединяет две строки.
Пример: оператор сложения используется для объединения двух строк:
let x = '10', y = '20'; let result = x + y; console.log(result);
Выход:
1020
В следующем примере показано, как использовать оператор сложения для вычисления суммы числа и строки:
let result = 10 + '20'; console.log(result);
Выход:
1020
В этом примере JavaScript преобразует число 10
в строку '10'
и объединяет с ней вторую строку '20'
.
В следующей таблице показан результат использования оператора сложения со специальными числами:
Первое значение | Второе значение | Результат | Объяснение |
---|---|---|---|
NaN | NaN | Если одно из значений равно NaN, результатом будет NaN | |
Бесконечность | Бесконечность | Бесконечность | Бесконечность + Бесконечность = Бесконечность |
-Бесконечность | -Бесконечность | -Бесконечность | -Бесконечность +( -Бесконечность) = — Бесконечность |
Бесконечность | -Бесконечность | NaN | Бесконечность + -бесконечность = NaN |
+0 | +0 | +0 | +0 +(+0) = +0 |
-0 | +0 | +0 | -0 +(+0) = +0 |
-0 | -0 | -0 | -0 +(-0) = -0 |
Оператор вычитания(-)
Оператор вычитания( -
) вычитает одно число из другого. Например:
let result = 30 - 10; console.log(result); // 20
Если значение является строкой, логическим значением, нулевым значением или неопределенным значением:
- Сначала преобразуйте в число с помощью функции Number().
- Во-вторых, выполните вычитание.
В следующей таблице показано, как использовать оператор вычитания со специальными значениями:
Первое значение | Второе значение | Результат | Объяснение |
---|---|---|---|
NaN | NaN | Если одно из значений равно NaN, результатом будет NaN | |
Бесконечность | Бесконечность | NaN | Бесконечность – Бесконечность = NaN |
-Бесконечность | -Бесконечность | NaN | -Бесконечность –(-Бесконечность) = NaN |
Бесконечность | -Бесконечность | -Бесконечность | -Бесконечность |
+0 | +0 | +0 | +0 –(+0) = +0 |
+0 | -0 | -0 | +0 –(-0) = -0 |
-0 | -0 | +0 | -0 –(-0) = +0 |
Оператор умножения(*)
В JavaScript используется звездочка(*) для обозначения оператора умножения. Оператор умножения умножает два числа и возвращает одно значение. Например:
let result = 2 * 3; console.log(result);
Выход:
6
Если одно из значений не является числом, механизм JavaScript неявно преобразует его в число с помощью функции Number()
и выполняет умножение. Например:
let result = '5' * 2; console.log(result);
Выход:
10
В следующей таблице показано, как оператор умножения ведет себя со специальными значениями:
Первое значение | Второе значение | Результат | Объяснение |
---|---|---|---|
NaN | NaN | Если одно из значений равно NaN, результатом будет NaN | |
Бесконечность | 0 | NaN | Бесконечность * 0 = NaN |
Бесконечность | Положительное число | Бесконечность | -Бесконечность * 100 = Бесконечность |
Бесконечность | Отрицательное число | -Бесконечность | Бесконечность *(-100) = -Бесконечность |
Бесконечность | Бесконечность | Бесконечность | Бесконечность * Бесконечность = Бесконечность |
Оператор деления(/)
Javascript использует символ косой черты( /
) для представления оператора деления. Оператор деления делит первое значение на второе. Например:
let result = 20 / 10; console.log(result); // 2
Если какое-либо значение не является числом, механизм JavaScript преобразует его в число для деления. Например:
let result = '20' / 2; console.log(result); // 10;
В следующей таблице показано поведение операторов деления при применении к специальным значениям:
Первое значение | Второе значение | Результат | Объяснение |
---|---|---|---|
NaN | NaN | Если одно из значений равно NaN, результатом будет NaN | |
Число | 0 | Бесконечность | 1/0 = бесконечность |
Бесконечность | Бесконечность | Бесконечность | Бесконечность / Бесконечность = NaN |
0 | 0 | NaN | 0/0 = NaN |
Бесконечность | Положительное число | Бесконечность | Бесконечность / 2 = Бесконечность |
Бесконечность | Отрицательное число | -Бесконечность | Бесконечность / -2 = — Бесконечность |
Использование арифметических операторов JavaScript с объектами
Если значение является объектом, движок JavaScript вызовет метод valueOf()
объекта, чтобы получить значение для вычисления. Например:
let energy = { valueOf() { return 100; }, }; let currentEnergy = energy - 10; console.log(currentEnergy); currentEnergy = energy + 100; console.log(currentEnergy); currentEnergy = energy / 2; console.log(currentEnergy); currentEnergy = energy * 1.5; console.log(currentEnergy);
Выход:
90 200 50 150
Если у объекта нет метода valueOf()
, но есть метод toString()
, движок JavaScript вызовет метод toString()
, чтобы получить значение для вычисления.
Пример:
let energy = { toString() { return 50; }, }; let currentEnergy = energy - 10; console.log(currentEnergy); currentEnergy = energy + 100; console.log(currentEnergy); currentEnergy = energy / 2; console.log(currentEnergy); currentEnergy = energy * 1.5; console.log(currentEnergy);
Выход:
40 150 25 75
Используйте арифметические операторы JavaScript, включая сложение( +
), вычитание( -
), умножение( *
) и деление( /
) для выполнения операций.