Cómo convertir un string a número en JavaScript: Tutorial completo

Go to Homepage

Para cualquier programador, es esencial conocer cómo convertir un string a número en JavaScript. A menudo, los valores ingresados por los usuarios en un formulario web se almacenan como strings, pero deben ser convertidos a números para poder realizar cálculos matemáticos en el backend. En este artículo, compartiré algunas de las mejores formas de realizar esta conversión en JavaScript.

Una de las formas más simples de convertir un string a número en JavaScript es utilizando el operador unario +. Este operador precede al operando y se evalúa como su operando, lo que permite transformar una cadena en un número. En el siguiente ejemplo, se convierte el string “16” en un número:

const x = "16";
const y = +x;
console.log(y); // Output: 16

Otra forma común de convertir un string a número en JavaScript es utilizando el método Number(). Este método devuelve el valor numérico de su argumento. Si el argumento no puede ser convertido a un número, se devuelve NaN. Por ejemplo:

const x = "16";
const y = Number(x);
console.log(y); // Output: 16

Convertir un string a número en JavaScript

En JavaScript, es común encontrarnos con la necesidad de convertir un string en un número. Afortunadamente, existen varias formas de hacerlo. En esta sección, exploraremos tres de las formas más comunes: usando Number(), usando parseInt() y usando el operador unario +.

Usando Number()

La primera forma de convertir un string en un número es usando la función Number(). Esta función toma un argumento y devuelve su valor como un número. Si el argumento no puede ser convertido a un número, la función devuelve NaN.

const str = "123";
const num = Number(str);
console.log(num); // 123

Usando parseInt()

Otra forma común de convertir un string en un número es usando la función parseInt(). Esta función toma un string como argumento y devuelve su valor como un número entero. Si el argumento no puede ser convertido a un número, la función devuelve NaN.

const str = "123";
const num = parseInt(str);
console.log(num); // 123

Es importante tener en cuenta que parseInt() puede tomar un segundo argumento opcional que especifica la base del número. Por ejemplo, si el string representa un número en hexadecimal, se puede usar parseInt() con una base de 16 para convertirlo a un número decimal.

const hexStr = "1A";
const num = parseInt(hexStr, 16);
console.log(num); // 26

Usando operador unario +

Una tercera forma de convertir un string en un número es usando el operador unario +. Este operador toma un argumento y lo convierte en un número. Si el argumento no puede ser convertido a un número, el operador devuelve NaN.

const str = "123";
const num = +str;
console.log(num); // 123

Es importante tener en cuenta que si el string contiene caracteres que no son números, el operador unario + devuelve NaN.

Hay varias formas de convertir un string en un número en JavaScript. La elección de la función o el operador a utilizar dependerá de las necesidades específicas de cada situación.

Ejemplos de código

A continuación, presento algunos ejemplos de código para convertir un string a número en JavaScript:

Ejemplo 1: Utilizando el operador +

El operador + puede utilizarse para convertir una cadena a un número. Por ejemplo:

const numeroString = "10";
const numero = +numeroString;
console.log(typeof numero); // "number"

En este ejemplo, se utiliza el operador + para convertir la cadena “10” en el número 10.

Ejemplo 2: Utilizando el método Number()

El método Number() puede utilizarse para convertir una cadena a un número. Por ejemplo:

const numeroString = "10";
const numero = Number(numeroString);
console.log(typeof numero); // "number"

En este ejemplo, se utiliza el método Number() para convertir la cadena “10” en el número 10.

Ejemplo 3: Utilizando el método parseInt()

El método parseInt() puede utilizarse para convertir una cadena a un número entero. Por ejemplo:

const numeroString = "10";
const numero = parseInt(numeroString);
console.log(typeof numero); // "number"

En este ejemplo, se utiliza el método parseInt() para convertir la cadena “10” en el número 10.

Ejemplo 4: Utilizando el método parseFloat()

El método parseFloat() puede utilizarse para convertir una cadena a un número decimal. Por ejemplo:

const numeroString = "10.5";
const numero = parseFloat(numeroString);
console.log(typeof numero); // "number"

En este ejemplo, se utiliza el método parseFloat() para convertir la cadena “10.5” en el número 10.5.

Existen varias formas de convertir un string a número en JavaScript, como utilizar el operador +, el método Number(), el método parseInt() y el método parseFloat().

Conversión de base

Para convertir un string a número en JavaScript, es importante entender cómo funciona la conversión de base. La base se refiere al número de símbolos distintos que se utilizan para representar un número. Por ejemplo, en el sistema decimal, se utilizan diez símbolos (0-9), mientras que en el sistema binario, solo se utilizan dos símbolos (0 y 1).

Una de las bases más comunes es la base hexadecimal, que utiliza 16 símbolos (0-9 y las letras del alfabeto de la A a la F) para representar números. Para convertir un número hexadecimal a decimal en JavaScript, se puede utilizar la función parseInt() con un segundo argumento que indique la base:

let hex = "1A";
let decimal = parseInt(hex, 16);
console.log(decimal); // Output: 26

También se puede utilizar el operador unario + para convertir un número hexadecimal a decimal:

let hex = "1A";
let decimal = +("0x" + hex);
console.log(decimal); // Output: 26

Es importante tener en cuenta que, al utilizar el operador + para convertir números hexadecimales, se debe agregar el prefijo “0x” al string para indicar que se trata de un número hexadecimal.

La conversión de base es una técnica importante para convertir números de un sistema a otro. En JavaScript, se pueden utilizar funciones como parseInt() o el operador unario + para realizar estas conversiones de manera sencilla y eficiente.

Consideraciones adicionales

Manejo de NaN

Cuando se convierte una cadena de texto a un número en JavaScript, es importante tener en cuenta que el resultado puede ser NaN (Not a Number) si la cadena no representa un número válido. Por ejemplo, si intentamos convertir la cadena “Hola mundo” a un número, obtendremos NaN.

Es importante manejar adecuadamente los casos en los que se obtiene NaN. Por ejemplo, si estamos realizando cálculos aritméticos, es posible que queramos mostrar un mensaje de error en lugar de utilizar el valor NaN en los cálculos.

Valores falsy

Es importante tener en cuenta que algunos valores en JavaScript se consideran falsy, es decir, se evalúan como falso en un contexto booleano. Estos valores incluyen el número 0, la cadena vacía “”, el valor null, el valor undefined, y el valor NaN.

Al convertir una cadena de texto a un número, es posible obtener uno de estos valores falsy si la cadena no representa un número válido. Por ejemplo, si intentamos convertir la cadena vacía "" a un número, obtendremos el valor 0.

Es importante tener en cuenta estos valores falsy al realizar cálculos aritméticos, ya que pueden afectar el resultado final.

Ejemplos de conversión de cadenas a números

A continuación, se presentan algunos ejemplos de cómo convertir una cadena de texto a un número en JavaScript:

  • Utilizando el operador unario +:

    let cadena = "123";
    let numero = +cadena;
    
  • Utilizando la función Number():

    let cadena = "123";
    let numero = Number(cadena);
    
  • Utilizando la función parseInt():

    let cadena = "123";
    let numero = parseInt(cadena);
    

Es importante tener en cuenta que la función parseInt() puede devolver NaN si la cadena no representa un número válido. Además, esta función también acepta un segundo parámetro opcional que indica la base numérica en la que se encuentra la cadena. Por ejemplo, parseInt(“10”, 2) devolverá el valor 2, ya que la cadena “10” representa el número binario 2.

Conversión de otros tipos de datos a números

Además de las cadenas de texto, también es posible convertir otros tipos de datos a números en JavaScript. Por ejemplo, es posible utilizar la función Number() para convertir un objeto a un número, siempre y cuando el objeto tenga un método toString() que devuelva una cadena de texto representando un número válido.

También es posible utilizar el operador unario + para convertir un valor booleano a un número. En este caso, el valor true se convierte en 1 y el valor false se convierte en 0.

La conversión de una cadena de texto a un número en JavaScript puede ser realizada de varias maneras, pero es importante tener en cuenta los casos en los que se obtiene NaN o un valor falsy. Además, también es posible convertir otros tipos de datos a números utilizando las funciones y operadores adecuados.