Precedência de operador
Precedência de operador é um conjunto de regras no JScript que controla a ordem em que o compilador executa operações ao avaliar uma expressão.Operações com uma precedência mais alta são realizadas antes com um menor.Por exemplo, a multiplicação é executada antes da adição.
Tabela de precedência
A tabela a seguir lista os operadores de JScript, ordenados do maior a precedência mais baixa.
Precedência |
Ordem de avaliação |
Operador |
Descrição |
---|---|---|---|
15 |
da esquerda para a direita |
., [], () |
Acesso de campo, a indexação de matriz, chamadas de função e agrupamento da expressão |
14 |
direita para a esquerda |
++,--,-, ~,!, excluir, novo, typeof, void |
Operadores unários, retornar o tipo de dados, criação de objetos, valores indefinidos |
13 |
da esquerda para a direita |
*, /, % |
Multiplicação, divisão de módulo divisão |
12 |
da esquerda para a direita |
+, - |
Adição e a seqüência de concatenação, subtração |
11 |
da esquerda para a direita |
<<, >>, >>> |
O deslocamento de bit |
10 |
da esquerda para a direita |
<, < =, >, > = instanceof |
Menor que, menor do que ou igual, maior que, maior que ou igual a, instanceof |
9 |
da esquerda para a direita |
==, !=, ===, !== |
Igualdade, desigualdade, Igualdade estrita e desigualdade estrita |
8 |
da esquerda para a direita |
& |
AND bit a bit |
7 |
da esquerda para a direita |
^ |
XOR bit a bit |
6 |
da esquerda para a direita |
| |
Operador bit a bit ou |
5 |
da esquerda para a direita |
&& |
E lógico |
4 |
da esquerda para a direita |
|| |
OR lógico |
3 |
direita para a esquerda |
?: |
Condicional |
2 |
direita para a esquerda |
=, OP= |
Atribuição de atribuição composta |
1 |
da esquerda para a direita |
, (vírgula) |
Avaliação de vários |
Parênteses em uma expressão alteram a ordem de avaliação determinada por precedência de operador.Isso significa que uma expressão entre parênteses é avaliada totalmente antes de seu valor a é usado no restante da expressão.
Por exemplo:
z = 78 * (96 - 3 + 45)
Há cinco operadores expressão anterior: =, *, (), -, and +.De acordo com às regras de precedência do operador, elas são avaliadas na seguinte ordem: (), -, +, *, =.
Avaliação da expressão dentro dos parênteses ocorre primeiro.Entre parênteses, existe um operador de adição e um operador de subtração.Os operadores têm a mesma precedência e são avaliados da esquerda para a direita.O número 3 é subtraído de 96 primeiro, resultando em 93.Em seguida, o número 45 é adicionado à 93, resultando em um valor de 139.
Multiplicação ocorre a seguir.O número 78 é multiplicado pelo número 139, resultando em um valor de 10764.
Atribuição ocorre por último.O número de 10764 é atribuído a z.