Операторы в JS
В этом уроке вы познакомитесь с операторами в JavaScript и научитесь использовать их.
Оператор — это специальный символ, который выполняет операции над операндами — значениями и переменными. , используемый для выполнения операций над операндами (значениями и переменными).
Например, здесь +
— оператор, который производит операцию сложения над двумя операндами: 2 и 3.
2 + 3; // 5
Типы операторов в JavaScript
В этом уроке мы изучим все основные операторы в JavaScript.
- Операторы присваивания.
- Арифметические операторы.
- Операторы сравнения.
- Логические операторы.
- Побитовые операторы.
- Операторы строк.
- Другие полезные операторы.
Операторы присваивания в JavaScript
Операторы присваивания позволяют присваивать переменным и константам значения, то есть нужны для инициализации.
В этом примере =
— оператор присваивания, который присваивает значение 5
константе x
.
const x = 5;
Список часто используемых операторов присвивания
Оператор | Название | Использование |
= | Присваивание | x = 7; |
+= | Присиваивание со сложением | x += 5 // Смысл: x = x + 5 |
-= | Присваивание с вычитанием | x -= 2 // Смысл: x = x - 2 |
*= | Присваивание с умножением | x *= 3 // Смысл: x = x * 3 |
/= | Присваивание с деленеим | x /= 6 // Смысл: x = x / 6 |
%= | Присваивание по модулю | x %= 2 // Смысл: x = x % 6 |
Примечание. Самый часто используемый оператор присваивания — =. Другие операторы присваивания станут понятны, когда вы изучите арифметические операторы.
Арифметические операторы в JavaScript
Арифметические операторы выполняют математические операции.
Например, здесь +
— арифметический оператор, который производит математическую операцию сложения.
2 + 3; // 5
Список арифметических операторов
Оператор | Название | Использование |
+ | Сложение | x + y |
- | Вычитание | x - y |
* | Умножение | x * y |
/ | Деление | x / y |
% | Взятие остатка от деления | x % y |
++ | Инкремент (увеличивает на 1) | ++x или x++ |
-- | Декремент (уменьшает на 1) | --x или x-- |
** | Возведение в степень | x**y |
Используем арифметические операторы
Сначала проанализируйте этот код, чтобы понять, как работают все операторы. Затем запустите его самостоятельно.
let x = 5;
let y = 3;
// сложение
console.log('x + y = ', x + y); // 8
// вычитание
console.log('x - y = ', x - y); // 2
// умножение
console.log('x * y = ', x * y); // 15
// деление
console.log('x / y = ', x / y); // 1.6666666666666667
// взятие остатка
console.log('x % y = ', x % y); // 2
// инкремент
console.log('++x = ', ++x); // увеличивает x на 1 и выводит 6
console.log('x++ = ', x++); // выводит 6 и увеличивает x на 1
console.log('x = ', x); // 7
// декремент
console.log('--x = ', --x); // уменьшает x на 1 и выводит 6
console.log('x-- = ', x--); // выводит 6 и уменьшает x на 1
console.log('x = ', x); // 5
// возведение в степень
// y — степень
console.log('x ** y =', x ** y);
Примечание. Оператор ** появился ECMAScript 2016, поэтому в некоторых браузерах он может быть недоступен. Проверить, поддерживает ли браузер оператор **, можно на странице JavaScript exponentiation browser support.
Операторы сравнения в JavaScript
Операторы сравнения позволяют сравнивать два значения. В качестве результата они возвращают true
, если значения равны, или false
в противном случае.
Например, здесь оператор сравнения >
проверяет, больше ли значение в переменной a
(левый операнд) значения в переменной b
(правый операнд).
let a = 3, b = 2;
console.log(a > b); // true
Поскольку 3 > 2, результат — true
.
Список операторов сравнения
Оператор | Описание | Использование |
== | Равно: возвращает true, если операнды равны. В остальных случаях false. | x == y |
!= | Не равно: возвращает true, если операнды не равны. В остальных случаях false. | x != y |
=== | Строгое равно: возвращает true, если операнды равны и принадлежат одному типу. В остальных случаях false. | x === y |
!== | Строгое не равно: возвращает true, если операнды не равны, или равны, но принадлежат разным типам. В остальных случаях false. | x !== y |
> | Больше чем: возвращает true, если правый операнд больше, чем левый. В остальных случаях false. | x > y |
>= | Больше или равно: возвращает true, если правый операнд больше левого или равен ему. В остальных случаях false. | x >= y |
< | Меньше чем: возвращает true, если правый операнд меньше, чем левый. В остальных случаях false. | x < y |
<= | Меньше или равно: возвращает true, если правый операнд меньше левого или равен ему. В остальных случаях false. | x <= y |
Используем операторы сравнения
Проанализируйте этот код, чтобы понять, как работают все операторы.
// оператор равно
console.log(2 == 2); // true
console.log(2 == '2'); // true
// оператор не равно
console.log(3 != 2); // true
console.log('hello' != 'Hello'); // true
// оператор строго равно
console.log(2 === 2); // true
console.log(2 === '2'); // false
// оператор строго не равно
console.log(2 !== '2'); // true
console.log(2 !== 2); // false
Операторы сравнения используют для принятия решений в условных операторах и циклах. Подробнее об этом мы поговорим в следующих статьях.
Логические операторы в JavaScript
Логические операторы выполняют логические операции и возвращают логическое значение true
или false
.
Например, здесь &&
— это логическое И. Поскольку и x < 6, и y < 5 — true
, результат — true
.
Список логических операторов
Оператор | Описание | Использование |
&& | Логическое И: возвращает true, если оба операнда true. В остальных случаях false. | x && y |
|| | Логическое ИЛИ: возвращает false, если оба операнда false. В остальных случаях true. | x || y |
! | Логическое НЕ: возвращает true, если операнд false. Возвращает false, если операнд true. | !x. |
Используем логические операторы
Проанализируйте этот код, чтобы понять, как работают все операторы.
// логическое И
console.log(true && true); // true
console.log(true && false); // false
// логическое ИЛИ
console.log(true || false); // true
// логическое НЕ
console.log(!true); // false
Логические операторы тоже используют для принятия решений в условных операторах и циклах. Подробнее об этом мы поговорим в следующих статьях.
Побитовые операторы в JavaScript
Побитовые операторы выполняют операции над числами в их двоичном представлении.
Список логических операторов
Оператор | Описание | Использование |
& | Побитовое И: возвращает единицу в каждой битовой позиции, для которой соответствующие биты обеих операндов являются единицами. | a & b |
| | Побитовое ИЛИ: возвращает единицу в каждой битовой позиции, для которой один из соответствующих битов или оба бита операндов являются единицами. | a | b |
^ | Исключающее ИЛИ: возвращает единицу в каждой битовой позиции, для которой только один из соответствующих битов операндов является единицей. | a ^ b |
~ | Побитовое НЕ: заменяет биты операнда на противоположные. | a ~ b |
<< | Сдвиг влево: сдвигает a в двоичном представлении на b бит влево, добавляя справа нули |
a << b |
>> | Сдвиг вправо с переносом знака: сдвигает a в двоичном представлении на b бит вправо, отбрасывая сдвигаемые биты. |
a >> b |
>>> | Сдвиг вправо с заполнением нулями: сдвигает a в двоичном представлении на b бит вправо, отбрасывая сдвигаемые биты и добавляя слева нули. |
a >>> b |
Примечание. Побитовые операторы редко используются в повседневном программировании, поэтому если пока эта тема кажется вам сложной — ничего страшного.
Строковые операторы в JavaScript
Со строками можно использовать операторы сравнения и оператор конкатенации +
. Он позволяет объединяет две строки и возвращает третью строку — объединение двух строк-операндов.
// оператор конкатенации
console.log("Привет," + " мир"); // "Привет, мир"
let a = "Java";
a += "Script"; // a = a + "Script";
console.log(a); // "JavaScript"
Другие полезные операторы в JavaScript
Вот еще несколько полезных операторов в JS. Подробнее мы поговорим о них в следующих статьях.
Оператор | Описание | Использование |
, | Вычисляет несколько операндов и возвращает значение последнего операнда. | let a = (1, 3 , 4); // 4 |
?: | Возвращает заданное значение в зависимости от условия | (5 > 3) ? "верно" : "неверно"; // "верно" |
delete | Удаляет объект, свойство объекта, или элемент массива с заданным индексом. | delete x |
typeof | Возвращает строку обозначающую тип невычисленного операнда. | typeof 3 // "number" |
void | Определяет выражение, которое должно быть вычислено без возвращения результата. | void(x) |
in | Возвращает true, если указанный объект имеет указанное свойство. | propNameOrNumber in objectName |
instanceof | Возвращает true, если заданный объект является объектом указанного типа. | objectName instanceof objectType |