Операторы Javascript

В JavaScript существует множество различных операторов: арифметические операторы, операторы присваивания, строковые операторы, операторы сравнения, логические операторы, операторы типов, побитовые операторы.

Оператор присваивания (=) присваивает значение переменной:


var x = 5;         // присваивает значение 5 переменной x
var y = 2;         // присваивает значение 2 переменной y
var z = x + y;     // присваивает значение 7 переменной z (x + y) 

Оператор сложения (+) складывает числа:


var x = 5;
var y = 2;
var z = x + y; 

Оператор умножения (*) перемножает числа:


var x = 5;
var y = 2;
var z = x * y; 

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

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

Оператор Описание
+ Сложение
- Вычитание
* Умножение
/ Деление
% Остаток от деления
++ Увеличение на 1
-- Уменьшение на 1

Операторы присваивания JavaScript

Операторы присваивания присваивают значения переменным JavaScript.

Оператор Пример Аналог
= x = y x = y
+= x += y x = x + y
-= x -= y x = x - y
*= x *= y x = x * y
/= x /= y x = x / y
%= x %= y x = x % y

Строковые операторы JavaScript

Оператор сложения (+) также может использоваться для объединения (конкатенации) строк.


 txt1 = "John";
 txt2 = "Doe";
 txt3 = txt1 + " " + txt2; 

В результате в переменной txt3 будет строка - "John Doe".

Также, для конкатенации строк можно использовать оператор присваивания +=:


 txt1 = "Какой теплый ";
 txt1 += "и чудесный день";

В результате в переменной txt1 будет строка - "Какой теплый и чудесный день".

При использовании со строками оператор + еще называют оператором конкатенации.

Сложение строк и чисел

Сложение двух чисел вернет сумму этих чисел, однако сложение числа и строки вернет строку:


 x = 5 + 5;
 y = "5" + 5;
 z = "Hello" + 5;

В результате в переменных x, y, z мы получим 10, 55, Hello5 соответственно.

Помните! Если сложить число и строку, в результате получится строка!

Операторы сравнения JavaScript

Оператор Описание
== равно
=== равно по значению и типу
!= не равно
!== не равно по значению и типу
> больше чем
< меньше чем
>= больше или равно
<= меньше или равно
? тернарный оператор

Логические операторы JavaScript

Оператор Описание
&& логическое И
|| логическое ИЛИ
! логическое НЕ

Операторы типов JavaScript

Оператор Описание
typeof Возвращает тип переменной
instanceof Возвращает true, если объект является экземпляром определенного объектного типа

Побитовые операторы JavaScript

Побитовые операторы работают с 32-битными числами.

Все числовые члены в побитовом операторе преобразуются в 32-битные числа. Результат вычисления преобразуется обратно в число JavaScript.

Оператор Описание Пример То же, что Результат Десятичное число
& И 5 & 1 0101 & 0001 1 1
| ИЛИ 5 | 1 0101 | 0001 101 5
~ НЕ ~5 ~0101 1010 10
^ ИСКЛЮЧАЮЩЕЕ ИЛИ 5 ^ 1 0101 ^ 0001 100 4
<< Побитовый сдвиг влево 5 << 1 0101 << 1 1010 10
>> Побитовый сдвиг вправо со знаком 5 >> 1 0101 >> 1 10 2
>>> Побитовый сдвиг вправо 5 >>> 1 0101 >>> 1 10 2

Внимание! В примерах в таблице выше приведены 4-битные числа без знака. В действительности же JavaScript использует 32-битные числа со знаком. Таким образом, в JavaScript выражение ~5 вернет не 10, а -6, т.е. ~00000000000000000000000000000101 возвращает 11111111111111111111111111111010.