Cómo Verificar si un Valor Es Un Número en JavaScript

JavaScript es un lenguaje de programación dinámico, lo que significa que no es necesario especificar el tipo de datos al declarar una variable. Esto es una ventaja en términos de flexibilidad, pero también puede ser un desafío cuando se trata de validar si un valor es un número o no.

Afortunadamente, JavaScript proporciona varias formas de verificar si un valor es un número. Aquí presentamos cuatro opciones para verificar si un valor es un número en JavaScript.

1. La Función isNaN()

La función isNaN() es una de las formas más simples de verificar si un valor es un número en JavaScript. La función devuelve true si el argumento es NaN (Not a Number) y false en caso contrario.

Aquí hay un ejemplo de código que utiliza la función isNaN():

javascriptCopy codelet num = "Hello";
console.log(isNaN(num));  // true

let num2 = 123;
console.log(isNaN(num2));  // false

2. La Función parseInt()

La función parseInt() es otra forma de verificar si un valor es un número en JavaScript. La función trata de parsear una cadena de texto y devuelve un entero si es posible. Si el parseo falla, devuelve NaN.

Aquí hay un ejemplo de código que utiliza la función parseInt():

javascriptCopy codelet num = "123";
console.log(parseInt(num));  // 123

let num2 = "Hello";
console.log(parseInt(num2));  // NaN

3. La Función Number()

La función Number() es otra forma de verificar si un valor es un número en JavaScript. La función intenta convertir un valor a un número y devuelve NaN si la conversión no es posible.

Aquí hay un ejemplo de código que utiliza la función Number():

javascriptCopy codelet num = "123";
console.log(Number(num));  // 123

let num2 = "Hello";
console.log(Number(num2));  // NaN

4. Expresiones Regulares

Por último, las expresiones regulares también pueden utilizarse para verificar si un valor es un número en JavaScript. La siguiente expresión regular devuelve true si el valor es un número y false en caso contrario:

const value = "42";
console.log(/^\d+$/.test(value)); // true