English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Os operadores executam operações matemáticas e lógicas nos operandos fornecidos.
JavaScript possui os seguintes tipos de operadores:
Operador aritmético
Operador de atribuição
Operador de comparação
Operador de bits
Operador lógico
Operador de string
Operador (trivalente) de condição
Operadores unários
Operadores de relação
Os operadores aritméticos são usados para executar operações aritméticas em números.
Os operadores aritméticos tratam números como seus operandos e retornam um único valor numérico.
Operador | Descrição | Exemplo | Definição | Teste |
---|---|---|---|---|
+ | Adição | a + b | A soma de a e b | Teste |
- | Subtração | a-b | A diferença entre a e b | Teste |
* | Multiplicação | a * b | O produto de a e b | Teste |
** | Potência | a ** b | a elevado à b | Teste |
/ | Divisão | a / b | a dividido por b | Teste |
% | Módulo (resto) | a % b | a / O resto de b | Teste |
++ | Incremento | a ++ | a incremento1 | Teste |
-- | Decremento | a-- | a decremento1 | Teste |
Operador de atribuição atribui valores para variáveis do JavaScript.
Operador de atribuição simples (=), que atribui o valor do operando direito ao operando esquerdo.
Operador | Descrição | Exemplo | Igual | Teste |
---|---|---|---|---|
= | Atribuição | a = b | a = b | Teste |
+= | Atribuição após a adição | a + = b | a = a + b | Teste |
-= | Atribuição após a subtração | a-= b | a = a-b | Teste |
*= | Atribuição após a multiplicação | a * = b | a = a * b | Teste |
**= | Atribuição após a potência | a ** = b | a = a ** b | Teste |
/= | Atribuição após a divisão | a / = b | a = a / b | Teste |
Atribuição após o módulo | a %= b | a = a % b | Teste |
Os operadores de comparação são usados para comparar dois valores e retornar um valor booleano.
Operador | Descrição | Exemplo | Definição | Teste |
---|---|---|---|---|
== | Igual | a == b | se a é igual a b, então é verdadeiro | Teste |
=== | Igual | a === b | se a é igual a b e pertence ao mesmo tipo, então é true | Teste |
!= | Diferente | a != b | se a não é igual a b for verdadeiro | Teste |
!== | Diferente incluindo tipo | a !== b | se a não é igual a b e não são do mesmo tipo de dados, então é true | Teste |
> | Maior | a > b | se a é maior que b, então é true | Teste |
< | Menor | a < b | se a é menor que b, então é true | Teste |
>= | Maior ou igual | a >= b | se a é maior ou igual a b, então é true | Teste |
<= | Menor ou igual | a <= b | se a é menor ou igual a b, então é true | Teste |
A diferença entre (a == b) e (a === b) é:
== Se a igual a b, retorna true
=== Se a igual a b e eles pertencemdo mesmo tipoentão retorna true
Os operadores de comparação podem ser usados em instruções condicionais para comparar valores e entrar em diferentes fluxos de acordo com o resultado.
Mais tarde, neste tutorial, você aprenderá a usar instruções condicionais.
Os operadores de operação bitwise tratam seus operandos32bits (zero e um), em vez de números decimais, hexadecimais ou octais.
Qualquer operando numérico neste operação será convertido32O resultado da conversão de dígitos. Converta para o número do JavaScript.
Operador | Descrição | Exemplo | Igual | Resultado | Decimal |
---|---|---|---|---|---|
& | E | 5&1 | 0101E 0001 | 0001 | 1Unidade |
| | Ou | 5 | 1 | 0101 | 0001 | 0101 | 5 |
~ | Não | ~5 | ~0101 | 1010 | 10 |
^ | XOR | 5 ^ 1 | 0101 ^ 0001 | 0100 | 4 |
<< | Deslocamento à esquerda | 5 << 1 | 0101 << 1 | 1010 | 10 |
>> | Deslocamento à direita com sinal | 5 >> 1 | 0101 >> 1 | 0010 | 2 |
>>> | Deslocamento à direita sem sinal | 5 >>> 1 | 0101 >>> 1 | 0010 | 2 |
O exemplo acima usa4Exemplo de número sem sinalizado de bits. Mas o JavaScript usa32número de sinalizado de bits.
Portanto, no JavaScript, ~5não retornará10. Ele retornará-6.
~00000000000000000000000000000101Retornará11111111111111111111111111111010
Os operadores lógicos são usados para determinar a lógica entre variáveis ou valores.
Os operadores lógicos são usados geralmente para combinar instruções de condição, retornando valores booleanos.
Operador | Descrição | Exemplo | Definição | Teste |
---|---|---|---|---|
&& | E lógico | a && b | Se a e b forem ambas verdadeiras, for verdadeira | Teste |
|| | OU lógico | a || b | Se a ou b for verdadeira, for verdadeira | Teste |
! | Negação lógica | !a | Se a não for verdadeira, for verdadeira | Teste |
O+O operador também pode ser usado para conectar (juntar) strings.
var str1 = "Hello"; var str2 = "World"; var str3 = str1 + " " + str2;Teste veja‹/›
Operador de atribuição de adição+= também pode ser usado para conectar (juntar) strings.
var str1 = "Hey! "; str1 += "How r u doing?";Teste veja‹/›
Quando usado em strings, o+Operador conhecido como operador de concatenação.
O operador condicional é o único operador do JavaScript que usa três operandos.
A descrição pode obter um dos dois valores com base na condição. A sintaxe é:
condition ? val1 : val2
Secondition O resultado da contagem étrue, então retornarával1, caso contrário, retornarával2.
Você pode usar o operador condicional em qualquer lugar onde possa usar operadores de padrão.
var status = (age >= 18) ? "adulto" : "criança";Teste veja‹/›
Se a idade for18Se a idade for de 18 anos ou mais, a instrução atribui o valor 'adulto' à variável status. Caso contrário, atribui o valor 'criança' a status.
A operação unária é uma operação que tem apenas um operando.
O JavaScript contém três operadores unários:
Descrição | Descrição |
---|---|
delete | Exclui objetos, atributos de objetos ou elementos no índice especificado de um array |
typeof | Retorna o tipo da variável |
void | Especificar uma expressão que requer um valor sem retornar um valor |
O operador delete pode excluir objetos, atributos de objetos ou elementos no índice especificado de um array.
Se a operação puder ser executada, o operador delete retorna true; caso contrário, retorna false. Se a operação não puder ser executada, retorna false.
Se o operador delete for bem-sucedido, ele atribui o valor undefined ao atributo ou elemento:
var user = {firstName:"Vishal", age:"22, "color":"blue"}; delete user.firstName; // retorna trueTeste veja‹/›
Quando o operador delete remove elementos do array, o elemento é removido do array.
var frutas = ["Apple", "Mango", "Banana"]; delete fruits[0]; // delete "Apple"Teste veja‹/›
Atenção:Ao remover elementos do array, o comprimento do array não é afetado.
O operador typeof retorna o tipo de uma variável ou expressão.
typeof "" // Retorna "string" typeof "Vishal"// Retorna "string" typeof "42"// Retorna "string" (Número dentro de aspas é String) typeof 42 // Retorna "number" typeof true// Retorna "boolean" typeof false // Retorna "boolean" typeof undefined // Retorna "undefined" typeof null// Retorna "object" typeof {name:"Vishal", age:22} // Retorna "object" typeof [2, 4, 6, 8]// Retorna "object" (não "array", veja a nota abaixo) typeof function myFunc(){} // Retorna "function"Teste veja‹/›
Atenção:O operador typeof retorna "object" para arrays, porque arrays são objetos no JavaScript.
Esta é a lista de valores retornados pelo operador typeof:
Tipo | A string retornada por typeof |
---|---|
Number | "number" |
String | "string" |
Boolean | "boolean" |
Object | "object" |
Function | "function" |
Undefined | "undefined" |
Null | "object" |
O operador void especifica uma expressão que requer valor, mas não retorna valor.
O código a seguir cria um link de hipertexto que, quando clicado pelo usuário, não executa nenhuma ação.
<a href="javascript:void(0)">Clique aqui para não fazer nada</a>/a>Teste veja‹/›
Os operadores de relação comparam seus operandos e retornam um valor booleano com base na comparação ser verdadeira ou não.
No JavaScript, há dois operadores de relação:
Descrição | Descrição |
---|---|
in | Se o atributo especificado estiver no objeto especificado, retorna true |
instanceof | Se o objeto for uma instância do tipo de objeto, retornará true |
Se o atributo especificado existir no objeto especificado, o operador in retornará true.
var user = {firstName:"Vishal", age:"22, "color":"blue"}; "firstName" in user; // retorna true "age" in user;// retorna true "Food" in user; // retorna falseTeste veja‹/›
Quando usar o operador in com um array Array, deve-se especificar o número do índice, não o valor no índice.
var frutas = ["Apple", "Mango", "Banana"]; var item1 = 0 in frutas; // retorna true var item2 = 1 em frutas; // retorna true var item3 = 2 em frutas; // retorna true var item4 = 3 em frutas; // retorna falseTeste veja‹/›
Se o objeto especificado pertencer ao tipo de objeto especificado, o operador instanceof retornará true.
Quando precisar determinar o tipo de objeto em tempo de execução, use o operador instanceof.
var myObj = new Date(); if (myObj instanceof Date) { // Sentenças para executar }Teste veja‹/›