Saber si es dígito en JavaScript

Hoy voy a mostrarte una función de JavaScript para saber si una cadena o carácter es un dígito, es decir, un número del 0 al 9. Para ello vamos a usar el código ASCII y la función charCodeAt.

Al final tendremos una función que nos permitirá saber si un carácter de JavaScript es un dígito, la cual funciona del lado del cliente y del servidor.

Voy a basarme en el funcionamiento de isalpha del buen C.

Función que dice si es un dígito en JavaScript

La función recibe una cadena. Obtiene el código ASCII y devuelve un booleano (true o false) indicando si la cadena es un dígito. Cabe mencionar que si la cadena tiene más de un carácter, solo el primero será tomado en cuenta.

/**
 * Saber si carácter es dígito con JavaScript
 * 
 * https://parzibyte.me/blog
 * 
 */
const esDigito = (caracter) => {
	let ascii = caracter.charCodeAt(0);
	return ascii > 47 && ascii < 58;
}

Si el código ASCII va desde el 48 hasta el 57 entonces es un dígito del 0 al 9. Recuerda que estamos usando funciones flecha.

Probar función que dice si string es dígito en JS

Ahora veamos unas pruebas de esta función. Defino un arreglo de caracteres y por cada uno pruebo a la función:

/**
 * Saber si carácter es dígito con JavaScript
 * 
 * https://parzibyte.me/blog
 * 
 */
const esDigito = (caracter) => {
	let ascii = caracter.charCodeAt(0);
	return ascii > 47 && ascii < 58;
}

// Probar
const caracteres = ["A","B","0","4","_","9", " "];
caracteres.forEach(caracter => {
	console.log("¿'%s' es dígito? %s", caracter, esDigito(caracter));
});

/*
Salida:
¿'A' es dígito? false
¿'B' es dígito? false
¿'0' es dígito? true
¿'4' es dígito? true
¿'_' es dígito? false
¿'9' es dígito? true
¿' ' es dígito? false
*/

Como ves, la salida es correcta y el algoritmo cumple con su función. Por cierto, como lo dije al inicio, esta función trabaja en el lado del cliente y del lado del servidor con Node.

También te invito a ver más sobre JavaScript en mi blog.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *