Математические операции. javascript
Добавить в избранное
JavaScript поддерживает все базовые математические операции:
Сложение:
let x = 10;
let y = x + 50;
let x = 100;
let y = x - 50;
let x = 4;
let y = 5;
let z = x * y;
let x = 40;
let y = 5;
let z = x / y;
Деление по модулю (оператор %) возвращает остаток от деления:
let x = 40;
let y = 7;
let z = x % y;
console.log(z); // 5
Результатом будет 5, так как наибольшее целое число, которое меньше или равно 40 и при этом делится на 7 равно 35, а 40 - 35 = 5.
Инкремент:
let x = 5;
x++; // x = 6
Оператор инкремента ++ увеличивает переменную на единицу. Существует префиксный инкремент, который сначала увеличивает переменную на единицу, а затем возвращает ее значение. И есть постфиксный инкремент, который сначала возвращает значение переменной, а затем увеличивает его на единицу:
// префиксный инкремент
let x = 5;
let z = ++x;
console.log(x); // 6
console.log(z); // 6
// постфиксный инкремент
let a = 5;
let b = a++;
console.log(a); // 6
console.log(b); // 5
Постфиксный инкремент аналогичен операции:
a = a + 1; // a++
Декремент уменьшает значение переменной на единицу. Также есть префиксный и постфиксный декремент:
// префиксный декремент
let x = 5;
let z = --x;
console.log(x); // 4
console.log(z); // 4
// постфиксный декремент
let a = 5;
let b = a--;
console.log(a); // 4
console.log(b); // 5
Как и принято в математике, все операции выполняются слева направо и различаются по приоритетам: сначала операции инкремента и декремента, затем выполняются умножение и деление, а потом сложение и вычитание. Чтобы изменить стандартный ход выполнения операций, часть выражений можно поместить в скобки:
let x = 10;
let y = 5 + (6 - 2) * --x;
console.log(y); //41
Операции присваивания
=
Присваивает переменной определенное значение: let x = 5;
+=
Сложение с последующим присвоением результата. Например:
let a = 23;
a += 5; // аналогично a = a + 5
console.log(a); // 28
-=
Вычитание с последующим присвоением результата. Например:
let a = 28;
a -= 10; // аналогично a = a - 10
console.log(a); // 18
*=
Умножение с последующим присвоением результата:
let x = 20;
x *= 2; // аналогично x = x * 2
console.log(x); // 40
/=
Деление с последующим присвоением результата:
x /= 4; // аналогично x = x / 4
console.log(x); // 10
%=
Получение остатка от деления с последующим присвоением результата:
Операторы сравнения
Как правило, для проверки условия используются операторы сравнения. Операторы сравнения сравнивают два значения и возвращают значение true или false:
==
Оператор равенства сравнивает два значения, и если они равны, возвращает true, иначе возвращает false: x == 5
===
Оператор тождественности также сравнивает два значения и их тип, и если они равны, возвращает true, иначе возвращает false: x === 5
!=
Сравнивает два значения, и если они не равны, возвращает true, иначе возвращает false: x != 5
!==
Сравнивает два значения и их типы, и если они не равны, возвращает true, иначе возвращает false: x !== 5
>
Сравнивает два значения, и если первое больше второго, то возвращает true, иначе возвращает false: x > 5
<
Сравнивает два значения, и если первое меньше второго, то возвращает true, иначе возвращает false: x < 5
>=
Сравнивает два значения, и если первое больше или равно второму, то возвращает true, иначе возвращает false: x >= 5
<=
Сравнивает два значения, и если первое меньше или равно второму, то возвращает true, иначе возвращает false: x <= 5
Все операторы довольно просты, наверное, за исключением оператора равенства и оператора тождественности. Они оба сравнивают два значения, но оператор тождественности также принимает во внимание и тип значения. Например:
Переменная result здесь будет равна true, так как фактически и income, и strIncome представляют число 100.
Но оператор тождественности возвратит в этом случае false, так как данные имеют разные тип:
Аналогично работают операторы неравенства != и !==.
Логические операции
Логические операции применяются для объединения результатов двух операций сравнения. В JavaScript есть следующие логические операции:
&&
Возвращает true, если обе операции сравнения возвращают true, иначе возвращает false:
||
Возвращает true, если хотя бы одна операция сравнения возвращают true, иначе возвращает false:
!
Возвращает true, если операция сравнения возвращает false:
Операции со строками
Строки могут использовать оператор + для объединения. Например:
Если одно из выражений представляет строку, а другое - число, то число преобразуется к строке и выполняется операция объединения строк: