JavaScript Operator Precedence

JavaScript Operator Precedence

Contenido original de W3Schools


La precedencia de operadores describe el orden en el que se realizan las operaciones en una expresión aritmética. La multiplicación (*) y la división (/) tienen mayor prioridad que la suma (+) y la resta (-).


Como en las matemáticas tradicionales, primero se hace la multiplicación:

let x = 100 + 50 * 3;

Ver ejemplo

Cuando se utilizan paréntesis, las operaciones dentro de los paréntesis se calculan primero:

let x = (100 + 50) * 3;

Ver ejemplo

Las operaciones con la misma precedencia (como * y /) se calculan de izquierda a derecha:

let x = 100 / 50 * 3;

Ver ejemplo


Valores de precedencia del operador

Las expresiones entre paréntesis se calculan antes que el resto de la expresión. La función se ejecuta antes de que el resultado se utilice en el resto de la expresión.

ValorOperadorDescripciónEjemplo
18( )Agrupación de expresiones(100 + 50) * 3
17.Miembro deperson.name
17[]Miembro deperson["name"]
17?.Encadenamiento opcional ES2020x ?. y
17()Llamada de funciónmyFunction()
17newNuevo con argumentosnew Date("June 5,2022")
16newNuevo sin argumentosnew Date()

Operadores incrementales

Los incrementos de postfijo se ejecutan antes que los incrementos de prefijo.

15++Incremento de sufijoi++
15--Decremento de sufijoi--
14++Incremento de prefijo++i
14--Decremento de prefijo--i

NO operadores

14!Logica NOT!(x==y)
14~Bit a bit NOT~x

Operadores unarios

14+Unario suma+x
14-Unario resta-x
14typeofTipo de datotypeof x
14voidEvaluar Voidvoid(0)
14deleteEliminar propiedaddelete myCar.color

Operadores aritméticos

Las exponenciaciones se ejecutan antes que las multiplicaciones. Las multiplicaciones y divisiones se ejecutan antes que las sumas y restas.

13**Exponenciacion ES201610 ** 2
12*Multiplicacion10 * 5
12/Division10 / 5
12%Residuo de la division10 % 5
11+Suma10 + 5
11-Resta10 - 5
11+Concatenacion"John" + "Doe"

Operadores de turno

10<<Desplazamiento a la izquierdax << 2
10>>Mayús a la derecha (firmado)x >> 2
10>>>Mayús a la derecha (sin firmar)x >>> 2

Operadores relacionales

9inPropiedad en objeto"PI" in Math
9instanceofInstancia de objetox instanceof Array

Operadores de comparación

9<Menor quex < y
9<=Menor o igualx <= y
9>Mayor quex > y
9>=Mayor que o igualx >= Array
8==Igualx == y
8===Igualdad estrictax === y
8!=Diferente dex != y
8!==Estrictamente desigualx !== y

Operadores bit a bit

7&Bit a bit ANDx & y
6^Bit a bit XORx ^ y
5``Bit a bit OR`xy`

Operadores logicos

4&&Logica ANDx && y
3``Logica OR`xy`
3??Nullish Coalescing ES2020x ?? y

Operador condicional (ternario)

2? :Condicion? "yes" : "no"

Operadores de asignación

Las asignaciones se ejecutan después de otras operaciones.

2=Asignación sencillax = y
2:Asignación de dos puntosx: 5
2+=Tarea de sumax += y
2-=Tarea de restax -= y
2*=Tarea de multiplicaciónx *= y
2**=Tarea de exponenciaciónx **= y
2/=Asignación de divisiónx /= y
2%=Asignación restantex %= y
2<<=Asignación de desplazamiento a la izquierdax <<= y
2>>=Asignación de desplazamiento a la derechax >>= y
2>>>=Desplazamiento a la derecha sin firmarx >>>= y
2&=Asignación AND bit a bitx &= y
2`=`Asignación OR bit a bit`x= y`
2^=Asignación XOR bit a bitx ^= y
2&&=Asignación lógica Yx &&= y
2`=`Asignación lógica OR`x= y`
2=>Flechax => y
2yieldPausar / Reanudaryield x
2yield*Delegaryield* x
2...Desparramar... x
1,Comax , y

W3Schools es el sitio de desarrolladores web más grande del mundo.

Did you find this article valuable?

Support Santos Romero by becoming a sponsor. Any amount is appreciated!