JavaScript. Приоритет операторов

Приоритет операторов

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

  • слева направо;
  • справа налево.

Ниже приведена таблица всех операторов языка JavaScript в порядке убывания приоритета.

Приоритет Оператор Ассоциативность Описание
0 ( ) Группировка

1

[ ]

.

new

Слева направо

Слева направо

Доступ к элементу массива

Доступ к свойству

Создание объекта со списком аргументов

2

function

new

Слева направо

Слева направо

Вызов функции

Создание объекта без списка аргументов

3 ++

Постфиксный инкремент

Постфиксный декремент

4

!

~

++

––

typeof

void

delete

Справа налево

Справа налево

Справа налево

Справа налево

Справа налево

Справа налево

Справа налево

Справа налево

Логическое отрицание

Поразрядное логич. отрицание

Отрицательное число

Префиксный инкремент

Префиксный декремент

Информация о типе

Вернуть undefined

Удаление

5 *

/

%

Слева направо

Слева направо

Слева направо

Умножение

Деление

Остаток от деления

6 +

Слева направо

Слева направо

Сложение

Вычитание

7 <<

>>

>>

Слева направо

Слева направо

Слева направо

Поразрядный сдвиг влево

Поразрядный сдвиг вправо

Поразрядный сдвиг вправо без знака

8 <

<=

>

>=

in

instanceof

Слева направо

Слева направо

Слева направо

Слева направо

Слева направо

Слева направо

Меньше

Меньше или равно

Больше

Больше или равно

Проверка наличия свойства

Проверка принадлежности типу

9 ==

!=

===

!==

Слева направо

Слева направо

Слева направо

Слева направо

Проверка на равенство

Проверка на неравенство

Проверка строгого равенства

Проверка строгого неравенства

10 & Слева направо Поразрядное И (AND)
11 ^ Слева направо Поразрядное исключающее ИЛИ (XOR)
12 | Слева направо Поразрядное ИЛИ (OR)
13 && Слева направо Логическое И (AND)
14 || Слева направо Логическое ИЛИ (OR)
15 ?: Справа налево Тернарный условный оператор
16 =

+=

-=

*=

/=

%=

<<=

>>=

>>>

&=

^=

!=

Справа налево Разновидности оператора присваивания
17 yield Справа налево Остановка и восстановление функции-генератора
18 , Слева направо Вычисляет оба операнда и возвращает значение другого