Manual de Referência Operadores JavaScript

Operadores do JavaScript são usados para atribuição, comparação de valores, execução de operações aritméticas, etc.

Veja também:

Tutorial:Operadores do JavaScript

Tutorial:Prioridade de Operadores JavaScript

Operadores aritméticos do JavaScript

Os operadores aritméticos são usados para executar operações aritméticas entre variáveis e/ou valores.

Dado y = 5,a tabela a seguir explica os operadores aritméticos:

Operador Descrição Exemplo O resultado em y O resultado em x Experimente
+ Adição x = y + 2 y = 5 x = 7 Experimente
- Subtração x = y - 2 y = 5 x = 3 Experimente
* Multiplicação x = y * 2 y = 5 x = 10 Experimente
/ Divisão x = y / 2 y = 5 x = 2.5 Experimente
% Módulo (resto da divisão) x = y % 2 y = 5 x = 1 Experimente
++ Aumento x = ++y y = 6 x = 6 Experimente
x = y++ y = 6 x = 5 Experimente
-- Decremento x = --y y = 4 x = 4 Experimente
x = y-- y = 4 x = 5 Experimente

Para saber mais sobre os operadores aritméticos, leia nosso Tutorial de operadores aritméticos do JavaScript.

Operadores de atribuição do JavaScript

Os operadores de atribuição são usados para atribuir valores às variáveis do JavaScript.

Dado x = 10 e y = 5,a tabela a seguir explica os operadores de atribuição:

Operador Exemplo É equivalente a O resultado em x Experimente
= x = y x = y x = 5 Experimente
+= x += y x = x + y x = 15 Experimente
-= x -= y x = x - y x = 5 Experimente
*= x *= y x = x * y x = 50 Experimente
/= x /= y x = x / y x = 2 Experimente
%= x %= y x = x % y x = 0 Experimente

Para saber mais sobre os operadores de atribuição, leia nosso Tutorial de atribuição do JavaScript.

Operadores de string do JavaScript

+ Operador e += Operador também podem ser usados para conectar (adicionar) strings.

Dado text1 = \text2 = \,e text3 = \,a tabela a seguir explica o operador:

Operador Exemplo text1 text2 text3 Experimente
+ text3 = text1 + text2 "Good " "Morning" "Good Morning" Experimente
+= text1 += text2 "Good Morning" "Morning" "" Experimente

Operadores de comparação

Usar os operadores de comparação em frases lógicas para determinar a igualdade ou diferença entre variáveis ou valores.

Dado x = 5,a tabela a seguir explica os operadores de comparação:

Operador Descrição Comparar Retornar Experimente
== Igual x == 8 false Experimente
x == 5 true Experimente
=== Valores e tipos iguais x === \ false Experimente
x === 5 true Experimente
!= Diferentes x != 8 true Experimente
!== Valores ou tipos diferentes x !== "5" true Experimente
x !== 5 false Experimente
> Maior que x > 8 false Experimente
< Menor que x < 8 true Experimente
>= Maior ou igual a x >= 8 false Experimente
<= Menor ou igual a x <= 8 true Experimente

Para saber mais sobre os operadores de comparação, leia nosso Tutorial de comparação JavaScript.

Operador de condição (trivalente)

O operador de condição atribui um valor a uma variável com base na condição.

Sintaxe

variablename = (condition) ? value1:value2

Exemplo

voteable = (age < 18) ? "Too young":"Old enough";

Experimente pessoalmente

Explicação do exemplo:

Se o valor da variável "age" for menor que 18, o valor da variável "voteable" será "Too young", caso contrário, o valor de "voteable" será "Old enough".

Operadores lógicos

Os operadores lógicos são usados para determinar a lógica entre variáveis ou valores.

Dado x = 6 e y = 3A tabela a seguir explica os operadores lógicos:

Operador Descrição Exemplo Experimente
&& e (x < 10 && y > 1) é verdadeiro Experimente
|| ou (x === 5 || y === 5) é falso Experimente
! não !(x === y) é verdadeiro Experimente

Operadores de bits JavaScript

Os operadores de operação de bits podem lidar com números de 32 bits. Qualquer operando numérico na operação será convertido para número de 32 bits. O resultado será convertido de volta para número JavaScript.

Operador Descrição Exemplo É equivalente a Result Decimal
& AND x = 5 & 1 0101 & 0001 0001 1
| OR x = 5 | 1 0101 | 0001 0101 5
~ NOT x = ~5 ~0101 1010 10
^ XOR x = 5 ^ 1 0101 ^ 0100 4
<< Deslocamento à esquerda x = 5 << 1 0101 << 1 1010 10
>> Deslocamento à direita x = 5 >> 1 0101 >> 1 0010 2

O exemplo acima usa um exemplo de 4 bits sem sinal. No entanto, JavaScript usa números de 32 bits com sinal.

Portanto, em JavaScript, ~5 não retorna 10, mas -6.

~00000000000000000000000000000101 retornará 11111111111111111111111111111010

operador typeof

typeof O operador typeof retorna o tipo de variável, objeto, função ou expressão:

Exemplo

typeof "Bill"                 // Retorna string
typeof 3.14                   // Retorna number
typeof NaN                    // Retorna number
typeof false                  // Retorna boolean
typeof [1, 2, 3, 4]           // Retorna object
typeof {name:'Bill', age:19}  // Retorna object
typeof new Date()             // Retorna object
typeof function () {}         // Retorna function
typeof myCar                  // Retorna undefined (se myCar não for declarado)
typeof null                   // Retorna object

Experimente pessoalmente

Atenção:

  • O tipo de dados de NaN é number
  • O tipo de dados de um array é object
  • O tipo de dados de uma data é object
  • O tipo de dados de null é object
  • O tipo de dados de uma variável não definida é undefined

Você não pode usar typeof para definir se um objeto JavaScript é um array (ou uma data).

Você não pode usar typeof para definir se um objeto JavaScript é um array (ou uma data).

operador delete

delete O operador remove propriedades do objeto:

Exemplo

var person = {firstName:"Bill", lastName:"Gates", age:19, eyeColor:"blue"};
delete person.age;   // Exclui person["age"];

Experimente pessoalmente

O operador delete remove tanto o valor da propriedade quanto a propriedade em si.

Após a exclusão, não é possível usar a propriedade até que ela seja adicionada novamente.

O operador delete é projetado para ser usado nas propriedades dos objetos. Ele não tem efeito em variáveis ou funções.

Notas:Não deve usar o operador delete em propriedades de objetos JavaScript predefinidos. Isso pode fazer com que seu aplicativo falhe.

Operador in

se o atributo especificado estiver no objeto especificado, então in O operador retornará true, caso contrário, retornará false:

Exemplo

// Arrays
var cars = ["Saab", "Volvo", "BMW"];
"Saab" in cars          // retorna false (especifica um índice em vez de um valor)
0 in cars               // retorna true
1 in cars               // retorna true
4 in cars               // retorna false (não existe)
"length" in cars        // retorna true (length é uma propriedade do array)
// Objetos
var person = {firstName:"Bill", lastName:"Gates", age:19};
"firstName" in person   // retorna true
"age" in person         // retorna true
// Objetos predefinidos
"PI" in Math            // retorna true
"NaN" in Number         // retorna true
"length" in String      // retorna true

Experimente pessoalmente

Operador instanceof

se o objeto especificado for uma instância do objeto especificado, então instanceof O operador retorna true:

Exemplo

var cars = ["Saab", "Volvo", "BMW"];
cars instanceof Array;          // retorna true
cars instanceof Object;         // retorna true
cars instanceof String;         // retorna false
cars instanceof Number;         // retorna false

Experimente pessoalmente

Operador void

void O operador calcula uma expressão e retorna undefinedEste operador geralmente é usado para obter valores originais não definidos usando "void(0)" (muito útil ao calcular expressões sem usar o valor de retorno).

Exemplo

<a href="javascript:void(0);">
  Link inútil
</a>
<a href="javascript:void(document.body.style.backgroundColor='red');">
  Clique aqui para mudar a cor de fundo do body para vermelho
</a>

Experimente pessoalmente