Expresiones y operadores

Este cap铆tulo documenta todos los operadores, expresiones y palabras clave del lenguaje JavaScript.

Expresiones y operadores por categor铆a

Para obtener una lista alfab茅tica, consulta la barra lateral de la izquierda.

Expresiones primarias

Palabras clave b谩sicas y expresiones generales en JavaScript.

this
La palabra clave this se refiere a una propiedad especial de un contexto de ejecuci贸n.
function
La palabra clave function define una expresi贸n de funci贸n.
class
La palabra clave class define una expresi贸n de clase.
function
La palabra clave function* define una expresi贸n de funci贸n generadora.
yield
Pausar y reanudar una funci贸n generadora.
yield*
Delegar a otra funci贸n generadora u objeto iterable.
async function
La async function define una expresi贸n de funci贸n as铆ncrona.
await
Pausa y reanuda una funci贸n as铆ncrona y espera la resoluci贸n/rechazo de la promesa.
[]
Iniciador de arreglo/sintaxis literal.
{}
Iniciador de objeto/sintaxis literal.
/ab+c/i
Sintaxis de expresi贸n regular literal.
( )
Operador de agrupaci贸n.

Expresiones del lado izquierdo

Los valores de la izquierda son el destino de una asignaci贸n.

Propiedad accessors
Los operadores miembro proporcionan acceso a una propiedad o m茅todo de un objeto
(object.property y object["property"]).
new
El operador new crea una instancia auxiliado por un constructor.
new.target
En los constructores, new.target se refiere al constructor que fue invocado por new.
super
La palabra clave super llama al constructor padre.
...obj
La sintaxis de extensi贸n permite expandir una expresi贸n en lugares donde se esperan m煤ltiples argumentos (para llamadas a funciones) o m煤ltiples elementos (para arreglos literales).

Incremento y decremento

Operadores de incremento sufijo/prefijo y decremento sufijo/prefijo.

A++
Operador de incremento sufijo.
A--
Operador de incremento sufijo.
A++
Operador de incremento prefijo.
--A
Operador de decremento prefijo.

Operadores unarios

Una operaci贸n unaria es una operaci贸n con un solo operando.

delete
El operador delete elimina una propiedad de un objeto.
void
El operador void descarta el valor de retorno de una expresi贸n.
typeof
El operador typeof determina el tipo de un objeto dado.
+
El operador unario m谩s convierte su operando al tipo Number.
-
El operador unario de negaci贸n convierte su operando al tipo Number y luego lo niega.
~
Operador NOT bit a bit.
!
Operador NOT l贸gico.

Operadores aritm茅ticos

Los operadores aritm茅ticos toman valores num茅ricos (ya sean literales o variables) como sus operandos y devuelven un solo valor num茅rico.

+
Operador de adici贸n o suma.
-
Operador de sustracci贸n o resta.
/
Operador de divisi贸n.
*
Operador de multiplicaci贸n.
%
Operador de residuo.
**
Operador de exponenciaci贸n.

Operadores relacionales

Un operador de comparaci贸n compara sus operandos y devuelve un valor Boolean basado en si la comparaci贸n es verdadera o no.

in
El operador in determina si un objeto tiene una determinada propiedad.
instanceof
El operador instanceof determina si un objeto es una instancia de otro objeto.
<
Operador menor que.
>
Operador mayor que.
<=
Operador menor o igual a.
>=
Operador mayor o igual a.

Nota: => no es un operador, sino la notaci贸n para Funciones de flecha.

Operadores de igualdad

El resultado de evaluar un operador de igualdad siempre es de tipo Boolean basado en si la comparaci贸n es verdadera.

==
Operador de igualdad.
!=
Operador de desigualdad.
===
Operador de igualdad estricta.
!==
Operador de desigualdad estricta.

Operadores de desplazamiento de bits

Operaciones para cambiar todos los bits del operando.

<<
Operador de desplazamiento bit a bit a la izquierda.
>>
Operador de desplazamiento bit a bit a la derecha.
>>>
Operador de desplazamiento bit a bit a la derecha sin signo.

Operadores binarios bit a bit

Los operadores bit a bit tratan a sus operandos como un conjunto de 32 bits (ceros y unos) y devuelven valores num茅ricos est谩ndar de JavaScript.

&
AND bit a bit.
|
OR bit a bit.
^
XOR bit a bit.

Operadores l贸gicos binarios

Los operadores l贸gicos se utilizan normalmente con valores booleanos (l贸gicos); cuando lo son, devuelven un valor booleano.

&&
AND l贸gico.
||
OR l贸gico.

Operador condicional (ternario)

(condition ? ifTrue : ifFalse)

El operador condicional devuelve uno de dos valores seg煤n el valor l贸gico de la condici贸n.

Operadores de asignaci贸n

Un operador de asignaci贸n asigna un valor a su operando izquierdo bas谩ndose en el valor de su operando derecho.

=
Operador de asignaci贸n.
*=
Asignaci贸n de multiplicaci贸n.
/=
Asignaci贸n de divisi贸n.
%=
Asignaci贸n de residuo.
+=
Asignaci贸n de suma.
-=
Asignaci贸n de sustracci贸n
<<=
Asignaci贸n de desplazamiento a la izquierda.
>>=
Asignaci贸n de desplazamiento a la derecha.
>>>=
Asignaci贸n de desplazamiento a la derecha sin signo.
&=
Asignaci贸n de AND bit a bit.
^=
Asignaci贸n de XOR bit a bit.
|=
Asignaci贸n de OR bit a bit.
&&=
Asignaci贸n de AND l贸gico.
||=
Asignaci贸n de OR l贸gico.
??=
Asignaci贸n de anulaci贸n l贸gica.
[a, b] = [1, 2]
{a, b} = {a:1, b:2}

La desestructuraci贸n te permite asignar las propiedades de un arreglo u objeto a variables utilizando una sintaxis que se parece a los arreglos u objetos literales.

Operador coma

,
El operador coma permite evaluar m煤ltiples expresiones en una sola declaraci贸n y devuelve el resultado de la 煤ltima expresi贸n.

Especificaciones

Compatibilidad del navegador

BCD tables only load in the browser

Ve tambi茅n