JS: Operadores (lista)

En JavaScript, los operadores son símbolos especiales que permiten realizar operaciones sobre uno o más valores llamados operandos. Tras manipular o procesar datos, devuelven un valor que representa el resultado de la operación. Los hay de distintos tipos que permiten realizar cálculos matemáticos, asignar valores, compararlos o simplemente realizar evaluaciones lógicas.

Estos son los principales tipos de operadores:

Operadores aritméticos

Los operadores aritméticos son aquellos que se utilizan para realizar cálculos matemáticos, como puede ser una suma, una resta, una multiplicación, una división, etc. Por tanto, se usan sobre valores de tipo numérico.

Operador Nombre Descripción
+ Adición Suma dos operandos.
- Sustracción Resta el segundo operando al primero.
* Multiplicación Multiplica dos operandos.
/ División Divide el primer operando por el segundo.
% Módulo Devuelve el residuo de una división entera.
** Exponenciación Eleva el primer operando a la potencia del segundo.
++ Incremento Aumenta en 1 el valor de la variable.
-- Decremento Disminuye en 1 el valor de la variable.

Operadores de asignación

Los operadores de asignación son los que permiten asignar un valor a una variable. Además, existen operadores compuestos para asignar después de haber hecho una operación matemática, algo que es muy útil en bucles.

Operador Nombre Descripción
= Asignación Asigna un valor a una variable.
+= Suma y asigna Suma el operando derecho al izquierdo.
-= Resta y asigna Resta el operando derecho al izquierdo.
*= Multiplica y asigna Multiplica el operando izquierdo por el derecho.
/= Divide y asigna Divide el operando izquierdo entre el derecho.
%= Calcula el resto y asigna Calcula el resto del izquierdo respecto al derecho.
**= Eleva y asigna Eleva una variable al exponente de un valor.

Operadores de comparación

Mediante los operadores de comparación es posible realizar comparaciones entre dos valores y obtener un resultado booleano: verdadero o falso. Estos operadores son fundamentales porque permiten evaluar expresiones.

Operador Nombre Descripción
== Igualdad Comprueba si dos valores son iguales, realizando conversión de tipo si es necesario.
=== Igualdad estricta Comprueba si dos valores son iguales y del mismo tipo.
!= Desigualdad Comprueba si dos valores son diferentes, realizando conversión de tipo si es necesario.
!== Desigualdad estricta Comprueba si dos valores son diferentes o de distinto tipo.
> Mayor que Comprueba si el operando izquierdo es mayor que el derecho.
< Menor que Comprueba si el operando izquierdo es menor que el derecho.
>= Mayor o igual que Comprueba si el operando izquierdo es mayor o igual que el derecho.
<= Menor o igual que Comprueba si el operando izquierdo es menor o igual que el derecho.

Operadores lógicos

Los operadores lógicos permiten combinar o modificar expresiones booleanas, que se evalúan como verdadero o falso. No obstante, gracias a las reglas de conversión implícita se pueden aplicar sobre cualquier tipo de dato.

Operador Nombre Descripción
&& AND Devuelve verdadero si ambos operandos son truthy.
|| OR Devuelve verdadero si uno de los dos operandos es truthy.
! NOT Niega el valor (devuelve el valor opuesto).

Operadores bit a bit

Los operadores bit a bit (bitwise) permiten trabajar de forma directa con la representación binaria de los números enteros. En vez de operar sobre valores numéricos, evalúan y manipulan cada bit de sus operandos.

Operador Nombre Descripción
& AND bit a bit Compara cada bit de los operandos y devuelve 1 si ambos son 1.
| OR bit a bit Compara cada bit de los operandos y devuelve 1 si uno de los dos es 1.
^ XOR bit a bit Devuelve 1 si los bits son distintos, y 0 si son iguales.
~ NOT bit a bit Operador unario: invierte cada bit del operando (complemento a uno).
<< Desplazamiento a la izquierda Desplaza los bits del operando izquierdo a la izquierda tantas posiciones como indique el operando derecho. Los espacios vacíos se rellenan con ceros. Equivale a multiplicar por potencias de 2.
>> Desplazamiento a la derecha con signo Desplaza los bits del operando izquierdo a la derecha. Los bits de la izquierda se rellenan con el bit de signo (se conserva el signo del número).
>>> Desplazamiento a la derecha con ceros Similar a >>, pero siempre rellena con ceros por la izquierda, sin conservar el signo.

Otros operadores

JavaScript también ofrece un conjunto de operadores especiales que no encajan directamente en las categorías anteriores. Estos permiten realizar tareas como evaluar condiciones, inspeccionar tipos de datos o manipular objetos.

Operadores especiales:

Operador Nombre Descripción
? : Operador condicional (ternario) Evalúa una condición: si es verdadera devuelve el valor de la primera expresión. En caso contrario devuelve el de la segunda.
typeof Operador typeof Devuelve el tipo de dato del operando en forma de cadena de texto.
?? Operador de coalescencia nula Devuelve el operando derecho solo si el izquierdo es null o undefined. En caso contrario devuelve el izquierdo.
delete Operador delete Elimina una propiedad de un objeto.
, Operador coma Evalúa múltiples expresiones de izquierda a derecha y devuelve el valor de la última.
() Agrupación de expresiones Permite alterar la precedencia de las operaciones, forzando el orden de evaluación.

Operadores avanzados:

Operador Nombre Descripción
yield Operador yield Pausa y reanuda la ejecución dentro de una función generadora.
... Operador de propagación (spread) Expande un iterable (como un array o una cadena de texto) en sus elementos individuales.
← Artículo anterior