Movatterモバイル変換


[0]ホーム

URL:


  1. Tecnologia Web para desenvolvedores
  2. JavaScript
  3. Referência JavaScript
  4. Operadores
  5. Precedência de Operadores

Esta página foi traduzida do inglês pela comunidade.Saiba mais e junte-se à comunidade MDN Web Docs.

View in EnglishAlways switch to English

Precedência de Operadores

Resumo

A precedência de operadores determina a ordem em que os operadores são processados. Operadores com maior precedência são processados primeiro.

Um exemplo simples:

3 + 4 * 5 // returns 23

O operador de multiplicação ("*") tem maior precedência que o operador de adição ("+") e por isso será executado primeiro.

Associatividade

Associatividade determina a ordem em que operadores da mesma precedência são processados. Por exemplo, considere a expressão:

a OP b OP c

Associatividade à esquerda (esquerda para direita) significa que a expressão será processada como(a OP b) OP c, enquanto associatividade à direita (direita para esquerda) significa que será interpretada comoa OP (b OP c). Operadores de atribuição são associativos à direita, então você pode escrever:

a = b = 5; 5 = b = a

com o resultado esperado quea eb tenham o valor 5. Isto é porque o operador de atribuição retorna o valor que ele atribuiu. Primeiro,b é definido com o valor 5. Entãoa é definido com o valor deb.

Tabela

A tabela seguinte está ordenada da mais alta (20) para a mais baixa (0) precedência.

PrecedênciaTipo do OperadorAssociatividadeOperadores individuais
20Agrupamenton/a( … )
19Acesso a Membroesquerda para direita… . …
Acesso a Membro Computadoesquerda para direita… [ … ]
new (com lista de argumentos)n/anew … ( … )
18Chamada a Funçãoesquerda para direita… ()
new (sem lista de argumentos)direita para esquerdanew …
17Incremento Pós-fixadon/a… ++
Decremento Pós-fixadon/a… --
16NÃO lógicodireita para esquerda! …
NÃO bit-a-bitdireita para esquerda~ …
Positivo Unáriodireita para esquerda+ …
Negativo Unáriodireita para esquerda- …
Incremento Pré-fixadodireita para esquerda++ …
Decremento Pré-fixadodireita para esquerda-- …
typeofdireita para esquerdatypeof …
voiddireita para esquerdavoid …
deletedireita para esquerdadelete …
15

Exponenciação

direita para esquerda… ** …
14Multiplicaçãoesquerda para direita… * …
Divisãoesquerda para direita… / …
Restoesquerda para direita… % …
13Adiçãoesquerda para direita… + …
Subtraçãoesquerda para direita… - …
12Deslocamento de bits para esquerdaesquerda para direita… << …
Deslocamento de bits para direitaesquerda para direita… >> …
Deslocamento de bits para direita, sem sinalesquerda para direita… >>> …
11Menor Queesquerda para direita… < …
Menor ou Igual aesquerda para direita… <= …
Maior Queesquerda para direita… > …
Maior ou Igual aesquerda para direita… >= …
inesquerda para direita… in …
instanceofesquerda para direita… instanceof …
10Igualdadeesquerda para direita… == …
Desigualdadeesquerda para direita… != …
Igualdade Estritaesquerda para direita… === …
Desigualdade Estritaesquerda para direita… !== …
9E bit-a-bitesquerda para direita… & …
8OU exclusivo bit-a-bitesquerda para direita… ^ …
7OU bit-a-bitesquerda para direita… | …
6E lógicoesquerda para direita… && …
5OU lógicoesquerda para direita… || …
4Condicionaldireita para esquerda… ? … : …
3Atribuiçãodireita para esquerda… = …
… += …
… -= …
… *= …
… /= …
… %= …
… <<= …
… >>= …
… >>>= …
… &= …
… ^= …
… |= …
2yielddireita para esquerdayield …
yield*yield* …
1Propagaçãon/a...
0Vírgula / Sequênciaesquerda para direita… , …

Help improve MDN

Learn how to contribute

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp