Aritmética do JavaScript
- Página anterior Operadores JS
- Próxima página Atribuição JS
Situações tipicas de processamento de números são operações aritméticas.
Operadores aritméticos do JavaScript
Operadores aritméticos executam operações aritméticas em números (textos ou variáveis).
operador | descrição |
---|---|
+ | Adição |
- | Subtração |
* | Multiplicação |
** | Potência (ES2016) |
/ | Divisão |
% | Coeficiente |
++ | Incremento |
-- | Decremento |
Operadores aritméticos
Operações aritméticas tipicas operam sobre dois números.
Esses dois números podem ser literals:
instância
var x = 7 + 8;
ou variável:
instância
var x = a + b;
ou expressão:
instância
var x = (7 + 8) * a;
Operadores e operandos
Em operações aritméticas, os números são chamados deOperando.
A operação (executada entre dois operandos) é feita poroperadorDefinição.
Operando | operador | Operando |
---|---|---|
7 | + | 8 |
Subtração
SubtraçãoO operador (-
) Minuendo.
var x = 7; var y = 8; var z = x - y;
Multiplicação
MultiplicaçãoO operador (*
) Multiplicador.
var x = 7; var y = 8; var z = x * y;
Coeficiente
CoeficienteO operador (%
) Retorna o resto da divisão.
var x = 7; var y = 2; var z = x % y;
Comentário:Na aritmética, a divisão de dois inteiros gera um quociente e um resto.
Comentário:Em matemática, o resultado da operação módulo é o resto da divisão aritmética.
Incremento
IncrementoO operador (++
) Incrementa o valor numérico.
var x = 7; x++; var z = x;
Decremento
DecrementoO operador (--
) Decrementa o valor numérico.
var x = 7; x--; var z = x;
Potência
O operador de potência (**) eleva o primeiro operando à potência do segundo operando.
instância
var x = 5; var z = x ** 2; // Resultado é 25
O resultado de x ** y é o mesmo que Math.pow(x,y):
instância
var x = 5; var z = Math.pow(x,2); // O resultado é 25
Prioridade do operador
A prioridade do operador (Operator precedence) descreve a ordem das operações executadas em uma expressão aritmética.
instância
var x = 200 + 50 * 2;
O resultado do exemplo é 250 * 2 ou 200 + 100?
É prioridade a multiplicação ou a adição?
Na matemática tradicional da escola, a multiplicação é prioritária.
multiplicação (*
)e divisão (%
)do que adição (+
)e subtração (-
)tem uma prioridade maiorprioridade.
Ao mesmo tempo, (como na matemática da escola), é possível mudar a prioridade usando parênteses:
instância
var x = (200 + 50) * 2;
Quando se usa parênteses, os operadores dentro dos parênteses são calculados primeiro.
Quando vários operadores têm a mesma prioridade (por exemplo, adição e subtração), a computação deles é feita da esquerda para a direita:
instância
var x = 200 + 50 - 2;
valor de prioridade do operador do JavaScript
valor | operador | descrição | instância |
---|---|---|---|
20 | ( ) | grupamento de expressão | (3 + 4) |
19 | . | membro | person.name |
19 | [] | membro | person["name"] |
19 | () | chamada de função | myFunction() |
19 | new | criar | new Date() |
17 | ++ | aumento pós-fixo | i++ |
17 | -- | decremento pós-fixo | i-- |
16 | ++ | aumento prefixado | ++i |
16 | -- | decremento prefixado | --i |
16 | ! | Negação lógica | !(x==y) |
16 | typeof | tipo | typeof x |
15 | ** | potência (ES7) | 10 ** 2 |
14 | * | multiplicação | 10 * 5 |
14 | / | divisão | 10 / 5 |
14 | % | divisão modular | 10 % 5 |
13 | + | adição | 10 + 5 |
13 | - | subtração | 10 - 5 |
12 | << | deslocamento à esquerda | x << 2 |
12 | >> | deslocamento à direita | x >> 2 |
12 | >>> | deslocamento à direita (sem sinal) | x >>> 2 |
11 | < | menor | x < y |
11 | <= | menor ou igual | x <= y |
11 | > | maior | x > y |
11 | >= | maior ou igual | x >= y |
11 | in | propriedade do objeto | "PI" in Math |
11 | instância de | instância do objeto | instância de Array |
10 | == | igual | x == y |
10 | === | igual estritamente | x === y |
10 | != | Diferente | x != y |
10 | !== | Diferente strictamente | x !== y |
9 | & | E bit a bit | x & y |
8 | ^ | XOR bit a bit | x ^ y |
7 | | | OU bit a bit | x | y |
6 | && | E lógico | x && y |
5 | || | Negação lógica | x || y |
4 | ? : | Condicional | ? "Sim" : "Não" |
3 | = | Atribuição | x = y |
3 | += | Atribuição | x += y |
3 | -= | Atribuição | x -= y |
3 | *= | Atribuição | x *= y |
3 | %= | Atribuição | x %= y |
3 | <<= | Atribuição | x <<= y |
3 | >>= | Atribuição | x >>= y |
3 | >>>= | Atribuição | x >>>= y |
3 | &= | Atribuição | x &= y |
3 | ^= | Atribuição | x ^= y |
3 | |= | Atribuição | x |= y |
2 | yield | Função pausada | yield x |
1 | , | Vírgula | 7, 8 |
Atenção:Verde pálido indica técnicas experimentais ou sugeridas (ECMASScript 2016 ou ES7)
Dica:A expressão entre parênteses será completamente calculada antes de ser usada no resto da expressão.
- Página anterior Operadores JS
- Próxima página Atribuição JS