◀ ▶

H. Precedencia de operadores

Orden Descripción Asociatividad Operador ejempo
1 agrupamiento n/a (…) (2 + 3)
2 miembro izquierda a derecha ….… a.b
…[…] a[0]
new n/a new …(…) new Clase(0)
invocación a función izquierda a derecha …(…) fn(x)
3 incremento sufijo n/a …++ a++
decremento sufijo n/a …-- a--
4 incremento prefijo n/a ++… ++a
decremento prefijo n/a --… --a
not lógico derecha a izquierda !… !a
not a nivel de bits derecha a izquierda ~… ~a
+ unario derecha a izquierda +… +a
negación unaria derecha a izquierda -… -a
typeof derecha a izquierda typeof … typeof a
void derecha a izquierda void … void a
delete derecha a izquierda delete … delete a.nombre
5 exponenciación n/a … ** … a ** b
6 multiplicación izquierda a derecha … * … a * b
división izquierda a derecha … / … a / b
residuo izquierda a derecha … % … a % b
7 suma izquierda a derecha … + … a + b
resta izquierda a derecha … - … a - b
8 corrimiento de bits izquierda a derecha … << … a << b
… >> … a >> b
… >>> … a >>> b
9 relacional izquierda a derecha … < … a < b
… <= … a <= b
… > … a > b
… >= … a >= b
in izquierda a derecha … in … "nombre" in a
instanceof izquierda a derecha … instanceof … a instanceof Array
10 igualdad izquierda a derecha … == … a == b
… != … a != b
… === … a === b
… !== … a !== b
11 and de bits izquierda a derecha … & … a & b
12 xor de bits izquierda a derecha … ^ … a ^ b
13 or de bits izquierda a derecha … | … a | b
14 and lógico izquierda a derecha … && … a && b
15 or lógico izquierda a derecha … || … a || b
16 condicional derecha a izquierda … ? … : … a ? b : c
17 asignación derecha a izquierda … = … a = b
… += … a += b
… -= … a -= b
… *= … a *= b
… /= … a /= b
… %= … a %= b
… <<= … a <<= b
… >>= … a >>= b
… >>>= … a >>>= b
… &= … a &= b
… ^= … a ^= b
… |= … a |= b
18 yield derecha a izquierda yield … yield a
19 coma izquierda a derecha … , … a , b

Fuentes: