Unario más (+)

El operador unario más (+) precede a su operando y evalúa a su operando intentando convertirlo en un número, si aún no lo es.

Pruébalo

Sintaxis

js
+x

Descripción

Aunque la negación unaria (-) también puede convertir elementos que no sean números, el operador unario más es la forma más rápida y la preferida de convertir algo en un número, porque no realiza ninguna otra operación con el número.

El operador unario más sigue exactamente los mismos pasos que la coerción numérica normal utilizada por la mayoría de los métodos integrados que esperan números. Puede convertir las representaciónes en cadenas de textos de enteros y flotantes, así como también valores que no son cadenas de texto como true, false y null. Se admiten números enteros en formato decimal y hexadecimal (con prefijo 0x). Se admiten números negativos (aunque no los hexadecimales). Si no puede analizar un valor en particular, lo evaluará como NaN.A diferencia de otros operadores aritméticos, que funcionan tanto con números como con BigInts, el uso del operador + en valores BigInt genera un TypeError.

Ejemplos

Uso con números

js
const x = 1;
const y = -1;

console.log(+x);
// 1
console.log(+y);
// -1

Uso con elementos que no sean números

js
+true  // 1
+false // 0
+null  // 0
+[]    // 0
+function (val) { return val; } // NaN
+1n    // throws TypeError: Cannot convert BigInt value to number

Especificaciones

Specification
ECMAScript Language Specification
# sec-unary-plus-operator

Compatibilidad con navegadores

BCD tables only load in the browser

Véase también