Арифметические операторы JavaScript

В этом руководстве вы узнаете, как использовать арифметические операторы 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'.

В следующей таблице показан результат использования оператора сложения со специальными числами:

Первое значениеВторое значениеРезультатОбъяснение
NaNNaNЕсли одно из значений равно 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().
  • Во-вторых, выполните вычитание.

В следующей таблице показано, как использовать оператор вычитания со специальными значениями:

Первое значениеВторое значениеРезультатОбъяснение
NaNNaNЕсли одно из значений равно 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

В следующей таблице показано, как оператор умножения ведет себя со специальными значениями:

Первое значениеВторое значениеРезультатОбъяснение
NaNNaNЕсли одно из значений равно NaN, результатом будет NaN
Бесконечность0NaNБесконечность * 0 = NaN
БесконечностьПоложительное числоБесконечность-Бесконечность * 100 = Бесконечность
БесконечностьОтрицательное число-БесконечностьБесконечность *(-100) = -Бесконечность
БесконечностьБесконечностьБесконечностьБесконечность * Бесконечность = Бесконечность

Оператор деления(/)

Javascript использует символ косой черты( / ) для представления оператора деления. Оператор деления делит первое значение на второе. Например:

let result = 20 / 10; 
console.log(result); // 2

Если какое-либо значение не является числом, механизм JavaScript преобразует его в число для деления. Например:

let result = '20' / 2; 
console.log(result); // 10;

В следующей таблице показано поведение операторов деления при применении к специальным значениям:

Первое значениеВторое значениеРезультатОбъяснение
NaNNaNЕсли одно из значений равно NaN, результатом будет NaN
Число0Бесконечность1/0 = бесконечность
БесконечностьБесконечностьБесконечностьБесконечность / Бесконечность = NaN
00NaN0/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, включая сложение( + ), вычитание( - ), умножение( * ) и деление( / ) для выполнения операций.

Рейтинг
( Пока оценок нет )
Александр Русаков / автор статьи
Программист, разработчик, 12 лет опыта работы в крупных компаниях. Быстро освоил typescript, делюсь своими знаниями на страницах этого сайта.
Загрузка ...
JavaScript и TypeScript