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
yobject["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 pornew
.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 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 tipoNumber
.-
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
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
Operadores de desplazamiento de bits
Operadores binarios bit a bit
Operadores lógicos binarios
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} = {a:1, b:2}
[a, b] = [1, 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.