Conoce los operadores unarios de JavaScript

Estrada Web Group
Estrada Web Group
Conoce los operadores unarios de JavaScript

Resumen: en este tutorial, aprenderás a usar operadores unarios de JavaScript que toman un solo operando y realizan una operación.

¿Qué es un operador unario?

Los operadores unarios son operadores aritméticos ( +, -, *, /, **, % ) que realizan una acción sobre un solo operando.

Una operación unaria: es una operación que solo necesita un valor para operar. Esto quiere decir que un operador unario más un valor nos va a devolver otro valor

Introducción a los operadores unarios de JavaScript

Los operadores unarios trabajan en un valor. La siguiente tabla muestra los operadores unarios y su significado:

Unary Operators Name Meaning
+x unario más Convertir un valor en un número
-x unario menos Convertir un valor en un número y negarlo
++x Operador de incremento (prefijo) Suma uno al valor
–x Operador de disminución (prefijo) Restar uno al valor
x++ Operador de incremento (postfijo) Suma uno al valor
x– Operador de disminución (Postfix) Restar uno al valor

Operador unario de más (+)

El operador unario más es un simple signo de más (+). Si colocas el signo más unario antes de un valor numérico, no hace nada. Por ejemplo

let x = 10;
let y = +x;

console.log(y); // 10

Cuando aplicas el operador unario más (+) a un valor no numérico, realiza una conversión de número utilizando la función Number() con las reglas de la siguiente tabla:

Value Result
boolean Convierte false a 0, true a 1
string Convierte el valor de la cadena en función de un conjunto de reglas específicas
object Llame al método valueOf() y/o toString() para obtener el valor para convertirlo en un número

Por ejemplo, lo siguiente usa el operador unario más unario (+) para convertir la cadena '10' al número 10:

let s = '10';
console.log(+s); // 10

El siguiente ejemplo usa el operador más unario (+) para convertir un valor booleano en un número false a 0 y true a 1:

let f = false,
    t = true;

console.log(+f); // 0
console.log(+t); // 1

Resultado:

0
1

Supongamos que tienes un objeto person con el método toString() de la siguiente manera:

let person = {
  name: 'John',
  toString: function () {
    return '25';
  },
};

console.log(+person);

Resultado:

25

En este ejemplo, aplicamos el operador unario más (+) en el objeto person que tiene el método toString(), el motor de JavaScript llama al método toString() para obtener el valor ('25') y convertirlo en un número. Lo siguiente agrega el método valueOf() al objeto person:

let person = {
  name: 'John',
  toString: function () {
    return '25';
  },
  valueOf: function () {
    return '30';
  },
};

console.log(+person);

Resultado:

30

En este ejemplo, el objeto person tiene el método valueOf(), el motor de JavaScript lo llama en lugar del método toString() para obtener el valor a convertir.

Operador unario menos (-)

El operador unario menos es un solo signo de menos (-). Si aplica el operador unario menos a un número, pone en negativo el número. Por ejemplo:

let x = 10;
let y = -x;

console.log(y); // -10

Si aplicas el operador unario menos a un valor no numérico, convierte el valor en un número usando las mismas reglas que el operador unario más y luego niega el valor.

Operadores de incremento/decremento

El operador de incremento tiene dos signos unarios de más (++) mientras que el operador de disminución tiene dos signos unarios menos (--).

Tanto los operadores de incremento como los de decremento tienen dos versiones: prefijo y posfijo. Y coloca las versiones de prefijo y posfijo de los operadores de incremento o decremento antes y después de la variable a la que se aplican.

El siguiente ejemplo usa el operador de incremento de prefijo para agregar uno a una variable:

let age = 25;
++age;

console.log(age); // 26

Es equivalente a lo siguiente:

let age = 25;
age = age + 1;
console.log(age); // 26

El siguiente ejemplo usa el operador de decremento para restar uno de una variable:

let weight = 90;
--weight;

console.log(weight); // 89

Es equivalente a lo siguiente:

let weight = 90;
weight = weight - 1;

console.log(weight); // 89

Cuando aplicas el incremento o decremento usando prefijo, JavaScript cambia la variable antes de evaluar la declaración. Por ejemplo:

let weight = 90;
weight = ++weight + 5;

console.log(weight); // 96

En este ejemplo:

  • Primero, aumente weight en el lado derecho para que ++weight sea 91
  • Segundo, agregue cinco a ++weight que devuelve 96
  • Tercero, asigna el resultado a weight del lado izquierdo.

Asimismo, el siguiente ejemplo utiliza un operador de decremento de prefijo:

let weight = 90;
weight = --weight + 5;

console.log(weight); // 94

En este ejemplo:

  • Primero, resta uno a weight y --weight devuelve 89
  • En segundo lugar, agregue cinco a --weight que devuelve 94
  • Tercero, asigne el resultado a weight del lado izquierdo.

El operador de incremento o decremento del sufijo cambia el valor después de que se evalúa la declaración. Por ejemplo:

let weight = 90;
let newWeight = weight++ + 5;

console.log(newWeight); // 95
console.log(weight); // 91

Cómo funciona.

  • Primero, agregue cinco a weight (90) y asigne el resultado a newWeight (95)
  • En segundo lugar, agregue uno a la variable weight después de que se complete la segunda declaración, el weight se convierte en 91.
  • En tercer lugar, envía newWeight y weight a la consola.

Al aplicar el operador de incremento/decremento a un valor no numérico, realiza los siguientes pasos:

  • Primero, convierte el valor en un número usando las mismas reglas que el operador unario más (+).
  • Luego, suma uno o resta uno del valor.

Resumen

  • Los operadores unarios trabajan en un valor.
  • Unario más (+) o menos (-) convierte un valor no numérico en un número. El menos unario niega el valor después de la conversión.
  • El operador de incremento de prefijo suma uno a un valor. El valor se cambia antes de que se evalúe la declaración.
  • El operador de incremento de sufijo suma uno a un valor. El valor se cambia después de evaluar la declaración.
  • El operador de decremento de prefijo resta uno de un valor. El valor se cambia antes de que se evalúe la sentencia.
  • El operador de decremento posfijo resta uno de un valor. El valor se cambia después de evaluar la declaración.
Compartir artículo:

Más artículos geniales

Tipos de datos de JavaScript y sus características

Tipos de datos de JavaScript y sus características

Resumen: en este tutorial, aprenderás sobre los tipos de datos de JavaScript y sus características.

Ver artículo completo
Cómo comprobar si un checkbox está seleccionado con jQuery y Javascript

Cómo comprobar si un checkbox está seleccionado con jQuery y Javascript

Para comprobar si un checkbox esta seleccionado hay que ver si la propiedad checked del checkbox esta presente o se encuentra en true, y esto se puede hacer utilizando los métodos .prop(), .attr() o incluso .is(selector) de jQuery.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla