Operadores aritméticos

TopoFim

Operador Descrição Exemplo(s)
+ Soma valores. a = 2 + 3;
b = b +1;
- Subtrai valores (como operador binário). x = x - 5;
x = a - b
- Muda sinal (como operador unitário). x = -x;
x = -(a + b);
* Multiplica valores. a = 2 * 3;
b = c * 5;
/ Divide valores. a = 50 / 3;
b = b * 4;
% Resto da divisão. d = 5 % 3;
d assume valor 2.
++(var) Incremento de 1 (antes). Se x é 2, y = ++x faz x igual a 3 e depois y igual a 3.
(var)++ Incremento de 1 (depois). Se x é 2, y = x++ faz y igual a 2 e depois x igual a 3.
--(var) Decremento de 1 (antes). Se x é 2, y = --x faz x igual a 1 e depois y igual a 1.
(var)-- Decremento de 1 (depois). Se x é 2, y = x-- faz y igual a 2 e depois x igual a 1.


Operadores bit-a-bit

TopoFim

Operador Descrição Exemplo(s)
& E bit-a-bit: retorna bit 1 para cada posição de bits iguais a 1 nos operandos e zero nos demais casos. 15 em binário é 1111
3 em binário é 0011
15 & 3 retorna 3 (0011)
| OU bit-a-bit: retorna bit 1 para cada posição de bits com pelo menos um deles igual a 1 e zero nos demais casos. 15 em binário é 1111
3 em binário é 0011
15 | 3 retorna 15 (1111)
^ OU EXCLUSIVO bit-a-bit: retorna bit 1 para cada posição com bits diferentes nos operandos e zero se iguais. 15 em binário é 1111
3 em binário é 0011
15 ^ 3 retorna 12 (1100)
~ NÃO bit-a-bit: inverte os bits do operando. a = ~3;
Faz a igual a -4
<< Desloca para a esquerda os bits do primeiro operando no valor do segundo operando. Bits zero são preenchidos à direita. a = 3<<2;
Faz a igual a 12 (0011 deslocando 2 bits e com zeros à direita fica 1100)
>> Desloca para a direita os bits do primeiro operando no valor do segundo operando. O sinal é preservado. a = 16>>2;
Faz a igual a 4 (10000 deslocando 2 bits à direita fica 100)
>>> Desloca para a direita os bits do primeiro operando no valor do segundo operando, preenchendo zeros à esquerda. a = 16>>>2;
Faz a igual a 4 (10000 deslocando 2 bits à direita fica 00100)


Operadores de atribuição

TopoFim

Operador Descrição Exemplo(s)
= Atribui o valor do operando esquerdo ao operando direito. x = 3;
a = b + c;
+= Soma 2 valores e atribui o resultado ao primeiro valor. x += 3;
Se x era 1, passa para 4.
-= Subtrai 2 valores e atribui o resultado ao primeiro. x -= 3;
Se x era 1, passa para -2.
*= Multiplica 2 valores e atribui o resultado ao primeiro. x *= 2;
Se x era 4, passa para 8.
/= Divide 2 valores e atribui o resultado ao primeiro. x /= 2;
Se x era 4, passa para 2.
%= Calcula o resto da divisão de 2 valores e atribui o resultado ao primeiro. x %= 2;
Se x era 3, passa para 1.
&= Computa E lógico bit-a-bit de 2 valores e atribui o resultado ao primeiro. x = 15;
x &= 3; // faz x igual a 3
Equivale a x = x & 3;
|= Computa OU lógico bit-a-bit de 2 valores e atribui o resultado ao primeiro. x = 15;
x |= 3; // faz x igual a 15
Equivale a x = x | 3;
^= Computa OU EXCLUSIVO lógico bit-a-bit de 2 valores e atribui o resultado ao primeiro. x = 15;
x ^= 3; // faz x igual a 12
Equivale a x = x ^ 3;
<<= Deslocamento à esquerda e atribuição do resultado ao primeiro. x = 3;
x <<= 2;
// faz x igual a 12
Equivale a x = x << 3;
>>= Deslocamento à direita e atribuição do resultado ao primeiro. x = 16;
x >>= 2;
// faz x igual a 4
Equivale a x = x >> 2;
>>>= Deslocamento à direita com preenchimento de zeros. x = 16;
x >>>= 2;
// faz x igual a 4
Equivale a x = x >>> 2;

Obs: para operações lógicas bit-a-bit e deslocamentos à esquerda ou à direita, ver mais detalhes no tópico Operadores bit-a-bit.


Operadores de comparação

TopoFim

Operador Descrição Exemplo(s), supondo a = 3 e b = 5
== Verdadeiro se os operandos são iguais. Se não são do mesmo tipo, a linguagem tenta converter para a correta comparação. a == 3; // retorna verdadeiro
a == b; // retorna falso
!= Verdadeiro se os operandos não são iguais. Se não são do mesmo tipo, a linguagem tenta converter para a correta comparação. a != 3; // retorna falso
a != b; // retorna verdadeiro
=== Verdadeiro se os operandos são iguais e do mesmo tipo. a === 3; // retorna verdadeiro
a === "3"; // retorna falso
!== Verdadeiro se os operandos não são iguais ou não são do mesmo tipo. a !== b; // retorna verdadeiro
a !== "3"; // retorna verdadeiro
> Verdadeiro se o operando esquerdo é maior que o direito. a > b; // retorna falso
b > a; // retorna verdadeiro
>= Verdadeiro se o operando esquerdo é maior ou igual ao direito. a >= 3; // retorna verdadeiro
b >= 7; // retorna falso
< Verdadeiro se o operando esquerdo é menor que o direito. a < b; // retorna verdadeiro
b < a; // retorna falso
<= Verdadeiro se o operando esquerdo é menor ou igual ao direito. a <= 3; // retorna verdadeiro
a <= 0; // retorna falso


Operadores de strings

TopoFim

Operador Descrição Exemplo(s)
+ Concatenar strings. str_1 = "Bom";
str_2 = str_1 + " dia";

str_2 contém "Bom dia"
+= Concatenar e atribuir o resultado ao operando da esquerda. str_1 = "Bom";
str_1 += " dia";

str_1 contém "Bom dia"


Operadores lógicos

TopoFim

Em geral são usados com expressões que retornam valores booleanos, isto é, verdadeiro ou falso.

Operador Descrição Exemplo(s), supondo a = 3 e b = 5
&& E lógico: retorna verdadeiro se ambas as expressões são verdadeiras e falso nos demais casos a==3 && b<10 // retorna verdadeiro
a!=3 && b==5 // retorna falso
|| OU lógico: retorna verdadeiro se pelo menos uma das expressões é verdadeira e falso se todas são falsas a==3 || b<10 // retorna verdadeiro
a!=3 || b==5 // retorna verdadeiro
a==1 || b==3 // retorna falso
! NÃO lógico: retorna verdadeiro se o operando é falso e vice-versa ! (a==3) // retorna falso
! (a!=3) // retorna verdadeiro


Outros operadores

TopoFim

Operador Descrição Exemplo(s)
?: Operador condicional na forma:
condição? exp_1 : exp_2
Se condição é verdadeira, retorna exp_1 e, se é falsa, retorna exp_2.
val = com_frete? "110,00" : "100,00";
document.write("Preço: " + val);

Se com_frete é verdadeiro, escreve:
"Preço: 110,00"
, Operador vírgula na forma:
exp_1, exp_2
Calcula ou avalia ambas as expressões.
Uso comum é em loops tipo for:

for(m=0,n=0; m<5; m++,n++){...
delete Exclui um objeto, uma propriedade de objeto, um elemento de uma array ou uma variável explicitamente declarada com var.
Para elemento de array, não altera o seu tamanho. Apenas o elemento fica indefinido.
val = new Array(10);
delete val[4];
delete val;
var nivel = 20;
delete nivel;
new Cria um novo objeto entre aqueles já existentes na linguagem (str = new String("abc"), etc) ou cria um objeto definido pelo usuário. function prod(nome,unidade,valor){
this.nome = nome;
this.unidade = unidade;
this.valor = valor;
}
P01 = new prod("banana","kg",2.00);
this Faz referência ao objeto em uso. <b>Digite 6 a 10 caracteres</b>
<input type="text" name="ab" size=10
onChange="verificar(this)">


A função verificar (a definir) recebe como parâmetro a caixa de texto, o que permite verificar a quantidade de caracteres digitados.
typeof Retorna uma string indicativa do tipo de operando. var val = 10;
typeof val retorna "number"

str = "abc";
typeof str retorna "string"
void Indica uma expressão para ser avaliada mas sem retornar nenhum valor. O código abaixo cria um hyperlink nulo, isto é, nada abre:
<a href="javascript:void(0)">Este link nada abre</a>