Operadores

Este capítulo documenta todos os operadores, expressões e keywords da linguagem JavaScript .

Expressões e operadores por categoria

Para uma lista alfabética ver a barra lateral à esquerda.

Expressões primárias

Palavras-chave e expressões básicas em JavaScript.

this

A palavra-chave this refere-se ao contexto de execução da função.

function

A palavra-chave function define uma função.

Experimental class

A palavra-chave class define uma classe.

Experimental function*

A palavra-chave function* define um gerador de função.

Experimental yield

Pausa e retorma uma função de gerador

Experimental yield*

Delegar a outra função gerador ou objeto iterável.

[]

Array initializer/literal syntax.

{}

Object initializer/literal syntax.

/ab+c/i

Regular expression literal syntax.

Experimental [for (x of y) x] (en-US)

Array comprehensions.

Experimental (for (x of y) y) (en-US)

Generator comprehensions.

( )

Grouping operator.

Left-hand-side expressions

Left values are the destination of an assignment.

Property accessors

Member operators provide access to a property or method of an object (object.property and object["property"]).

new

The new operator creates an instance of a constructor.

Experimental super

The super keyword calls the parent constructor.

Experimental ...obj (en-US)

The spread operator allows an expression to be expanded in places where multiple arguments (for function calls) or multiple elements (for array literals) are expected.

Incremento e decremento

Operadores sufixo/prefixo para incremento e sufixo/prefixo para decremento.

A++ (en-US)

Operador sufixo para incremento.

A-- (en-US)

Operador sufixo para decremento.

++A (en-US)

Operador prefixo para incremento.

--A (en-US)

Operador prefixo para decremento.

Unary operators

A unary operation is operation with only one operand.

delete (en-US)

The delete operator deletes a property from an object.

void

The void operator discards an expression's return value.

typeof

The typeof operator determines the type of a given object.

+ (en-US)

The unary plus operator converts its operand to Number type.

- (en-US)

The unary negation operator converts its operand to Number type and then negates it.

~ (en-US)

Bitwise NOT operator.

! (en-US)

Logical NOT operator.

Operadores aritméticos

Arithmetic operators take numerical values (either literals or variables) as their operands and return a single numerical value.

+ (en-US)

Operador de soma.

- (en-US)

Operador de subtração.

/ (en-US)

Operador de divisão.

* (en-US)

Operador de multiplicação.

% (en-US)

Remainder operator.

Operadores relacionais

A comparison operator compares its operands and returns a Boolean value based on whether the comparison is true.

in

The in operator determines whether an object has a given property.

instanceof

The instanceof operator determines whether an object is an instance of another object.

< (en-US)

Operador "menor que".

> (en-US)

Operador "maior que".

<= (en-US)

Operador "menor ou igual que".

>= (en-US)

Operador "maior ou igual que".

Operadores de igualdade

O resultador de um operador de igualdade é do tipo Booleano baseado que a comparação seja verdadeira.

== (en-US)

Operadores de igualdade.

!= (en-US)

Inequality operator.

=== (en-US)

Identity operator.

!== (en-US)

Nonidentity operator.

Bitwise shift operators

Operations to shift all bits of the operand.

<< (en-US)

Bitwise left shift operator.

>> (en-US)

Bitwise right shift operator.

>>> (en-US)

Bitwise unsigned right shift operator.

Binary bitwise operators

Bitwise operators treat their operands as a set of 32 bits (zeros and ones) and return standard JavaScript numerical values.

& (en-US)

Bitwise AND.

| (en-US)

Bitwise OR.

^ (en-US)

Bitwise XOR.

Operadores Lógicos Binários

Operadores lógicos são normalmente usados com boolean (logical) valores, e quando eles são, eles retornam um valor Boolean.

&& (en-US)

AND.

|| (en-US)

OR.

Operador de Condicional (ternário)

(condition ? ifTrue : ifFalse)

O operador condicional retorna um dos dois valores baseado no valor lógico da condição.

Assignment operators

An assignment operator assigns a value to its left operand based on the value of its right operand.

= (en-US)

Assignment operator.

*= (en-US)

Multiplication assignment.

/= (en-US)

Division assignment.

%= (en-US)

Remainder assignment.

+= (en-US)

Addition assignment.

-= (en-US)

Subtraction assignment

<<= (en-US)

Left shift assignment.

>>= (en-US)

Right shift assignment.

>>>= (en-US)

Unsigned right shift assignment.

&= (en-US)

Bitwise AND assignment.

^= (en-US)

Bitwise XOR assignment.

|= (en-US)

Bitwise OR assignment.

Experimental [a, b] = [1, 2] Experimental {a, b} = {a:1, b:2}

Destructuring assignment allows you to assign the properties of an array or object to variables using syntax that looks similar to array or object literals.

Comma operator

,

The comma operator allows multiple expressions to be evaluated in a single statement and returns the result of the last expression.

Non-standard features

Non-standard Legacy generator function (en-US)

The function keyword can be used to define a legacy generator function inside an expression. To make the function a legacy generator, the function body should contains at least one yield expression.

Non-standard Expression closures

The expression closure syntax is a shorthand for writing simple function.

Especificações

Specification
ECMAScript Language Specification
# sec-addition-operator-plus
ECMAScript Language Specification
# sec-assignment-operators
ECMAScript Language Specification
# sec-async-function-definitions
ECMAScript Language Specification
# sec-async-generator-function-definitions
ECMAScript Language Specification
# prod-BitwiseANDExpression
ECMAScript Language Specification
# sec-bitwise-not-operator
ECMAScript Language Specification
# prod-BitwiseORExpression
ECMAScript Language Specification
# prod-BitwiseXORExpression
ECMAScript Language Specification
# sec-class-definitions
ECMAScript Language Specification
# sec-comma-operator
ECMAScript Language Specification
# sec-conditional-operator
ECMAScript Language Specification
# sec-postfix-decrement-operator
ECMAScript Language Specification
# sec-delete-operator
ECMAScript Language Specification
# sec-destructuring-assignment
ECMAScript Language Specification
# sec-destructuring-binding-patterns
ECMAScript Language Specification
# sec-multiplicative-operators
ECMAScript Language Specification
# sec-equality-operators
ECMAScript Language Specification
# sec-exp-operator
ECMAScript Language Specification
# sec-function-definitions
ECMAScript Language Specification
# sec-generator-function-definitions
ECMAScript Language Specification
# sec-relational-operators
ECMAScript Language Specification
# sec-grouping-operator
ECMAScript Language Specification
# sec-import-calls
ECMAScript Language Specification
# prod-ImportMeta
HTML Standard
# hostgetimportmetaproperties
ECMAScript Language Specification
# sec-postfix-increment-operator
ECMAScript Language Specification
# sec-left-shift-operator
ECMAScript Language Specification
# prod-LogicalANDExpression
ECMAScript Language Specification
# sec-logical-not-operator
ECMAScript Language Specification
# prod-LogicalORExpression
ECMAScript Language Specification
# sec-new-operator
ECMAScript Language Specification
# sec-built-in-function-objects
ECMAScript Language Specification
# sec-null-value
ECMAScript Language Specification
# prod-CoalesceExpression
ECMAScript Language Specification
# sec-object-initializer
ECMAScript Language Specification
# prod-OptionalExpression
ECMAScript Language Specification
# sec-property-accessors
ECMAScript Language Specification
# sec-signed-right-shift-operator
ECMAScript Language Specification
# prod-SpreadElement
ECMAScript Language Specification
# prod-ArgumentList
ECMAScript Language Specification
# prod-PropertyDefinition
ECMAScript Language Specification
# sec-subtraction-operator-minus
ECMAScript Language Specification
# sec-super-keyword
ECMAScript Language Specification
# sec-this-keyword
ECMAScript Language Specification
# sec-typeof-operator
ECMAScript Language Specification
# sec-unary-minus-operator
ECMAScript Language Specification
# sec-unary-plus-operator
ECMAScript Language Specification
# sec-unsigned-right-shift-operator
ECMAScript Language Specification
# sec-void-operator
ECMAScript Language Specification
# prod-YieldExpression
ECMAScript Language Specification
# sec-generator-function-definitions-runtime-semantics-evaluation

Veja também