This article is in need of a technical review.

There are several special operators that do not fit into any other category:

Arithmetic Operators

(+, -, *, /, %, ++, --, unary -, unary +)

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

Assignment Operators

(=, *=, /=, %=, +=, -=, <<=, >>=, >>>=, &=, ^=, |=)

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

Bitwise Operators

(&, |, ^, ~, <<, >>, >>>)

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

Comparison Operators

(==, !=, ===, !==, >, >=, <, <=)

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

Logical Operators

(&&, ||, !)

Logical operators are typically used with boolean (logical) values, and when they are, they return a boolean value.

String Operators

(+ and +=)

The string operators concatenate two string values together, returning another string that is the union of the two strings.

Member Operators

(object.property and object["property"])

Member operators provide access to a property or method of an object.

Special Operators
Conditional Operator

(condition ? ifTrue : ifFalse)

The conditional operator returns one of two values based on the logical value of the condition.

Comma Operator


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

delete Operator


The delete operator deletes a property from an object.

in Operator


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

instanceof Operator


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

new Operator


The new operator creates an instance of a constructor.

typeof Operator


The typeof operator determines the type of a given object.

void Operator


The void operator discards an expression's return value.

yield Operator


The yield operator determines what is returned in a generator by that generator's iterator.

Operator Precedence
Operator precedence defines the order in which operators are evaluated.
get Modifier


The get modifier defines a property in an object literal to be a getter.

set Modifier


The set modifier defines a property in an object literal to be a setter.

function Keyword


The function keyword defines a function expression.

this Keyword


The this keyword refers to the function's execution context.

Document Tags and Contributors

Last updated by: Delapouite,