Prioridad de operadores de JavaScript
- Página anterior Expresiones regulares JS
- Página siguiente Excepciones JS
La prioridad del operador (Operator Precedence) describe el orden de ejecución de las operaciones en una expresión aritmética.
La prioridad de los operadores de multiplicación (*) y división (/) es mayor que la de adición (+) y sustracción (-).
Ejemplo
Al igual que en la matemática tradicional, se realiza primero la multiplicación:
let x = 100 + 50 * 3;
Al usar paréntesis, se calcula primero la operación dentro de los paréntesis:
let x = (100 + 50) * 3;
Operaciones con la misma prioridad (como * y /) se calculan de izquierda a derecha:
let x = 100 / 50 * 3;
Valor de prioridad del operador
La expresión dentro de los paréntesis se calcula antes de la parte restante de la expresión, y la función se ejecuta antes de que el resultado se utilice en la parte restante de la expresión:
Prioridad | Operador | Descripción | Ejemplo |
---|---|---|---|
18 | ( ) | Expresión de agrupación | (100 + 50) * 3 |
17 | . | Miembro perteneciente | person.name |
17 | [] | Miembro perteneciente | person["name"] |
17 | ?. | Cadena opcional ES2020 | x ?. y |
17 | () | Llamada de función | myFunction() |
17 | new | Creación con parámetros | new Date("June 5,2022") |
16 | new | Creación sin parámetros | new Date() |
Operadores de增量El incremento postfijo se ejecuta antes que el incremento prefijo. |
|||
15 | ++ | Incremento postfijo | i++ |
15 | -- | Decremento postfijo | i-- |
14 | ++ | Incremento prefijo | ++i |
14 | -- | Decremento prefijo | --i |
Operador NOT |
|||
14 | ! | No lógico | !(x==y) |
14 | ~ | No bit a bit | ~x |
Operadores unarios |
|||
14 | + | Adición unaria | +x |
14 | - | Resta unaria | -x |
14 | typeof | Tipo de datos | typeof x |
14 | void | Evaluación de nulo | void(0) |
14 | delete | Eliminación de atributo | delete myCar.color |
Operadores aritméticosLa operación exponencial se ejecuta antes que la multiplicación. La multiplicación y la división se ejecutan antes que la adición y la sustracción. |
|||
13 | ** | Operación exponencial ES2016 | 10 ** 2 |
12 | * | Multiplicación | 10 * 5 |
12 | / | División | 10 / 5 |
12 | % | Resto de división | 10 % 5 |
11 | + | Suma | 10 + 5 |
11 | - | Resta | 10 - 5 |
11 | + | Conexión | "Bill" + "Gates" |
Operadores de desplazamiento |
|||
10 | << | Desplazamiento a la izquierda | x << 2 |
10 | >> | Desplazamiento a la derecha (con signo) | x >> 2 |
10 | >>> | Desplazamiento a la derecha (sin signo) | x >>> 2 |
Operadores de relación |
|||
9 | in | Atributo en objeto | "PI" in Math |
9 | instanceof | Instancia de objeto | x instanceof Array |
Operadores de comparación |
|||
9 | < | Menor que | x < y |
9 | <= | Menor o igual que | x <= y |
9 | > | Mayor que | x > y |
9 | >= | Mayor o igual que | x >= Array |
8 | == | Igual | x == y |
8 | === | Estrictamente igual | x === y |
8 | != | No igual | x != y |
8 | !== | No estrictamente igual | x !== y |
Operadores bit a bit |
|||
7 | & | Y bit a bit | x & y |
6 | ^ | Xor bit a bit | x ^ y |
5 | | | O bit a bit | x | y |
Operadores lógicos |
|||
4 | && | Y lógico | x && y |
3 | || | O lógico | x || y |
3 | ?? | Combinación de valores nulos ES2020 | x ?? y |
Operador de combinación condicional (ternario) |
|||
2 | ? : | Condicional | ? "sí" : "no" |
Operador de asignaciónLa asignación se ejecuta después de otras operaciones. |
|||
2 | = | Asignación simple | x = y |
2 | : | Asignación de dos puntos | x: 5 |
2 | += | Asignación de suma | x += y |
2 | -= | Asignación de resta | x -= y |
2 | *= | Asignación de multiplicación | x *= y |
2 | **= | Asignación de exponente | x **= y |
2 | /= | Asignación de división | x /= y |
2 | %= | Asignación de módulo | x %= y |
2 | <<= | Asignación de desplazamiento a la izquierda | x <<= y |
2 | >>= | Asignación de desplazamiento a la derecha | x >>= y |
2 | >>>= | Desplazamiento a la derecha sin signo | x >>>= y |
2 | &= | Asignación de AND bit a bit | x &= y |
2 | |= | Asignación de OR bit a bit | x |= y |
2 | ^= | Asignación de XOR bit a bit | x ^= y |
2 | &&= | Asignación lógica y | x &= y |
2 | ||= | Asignación lógica o | x ||= y |
2 | => | Operador de flecha | x => y |
2 | yield | Pausa / Restauración | yield x |
2 | yield* | Operador de delegación yield* | Operador de delegación yield* x |
2 | ... | Operador de expansión | ... x |
1 | , | Coma | x , y |
- Página anterior Expresiones regulares JS
- Página siguiente Excepciones JS