⊗jsPmCdExND 139 of 505 menu

Verificación de dígitos de un número en JavaScript

Supongamos que tenemos un número:

let num = 12345;

Intentar acceder al primer carácter del número conducirá a un comportamiento inesperado:

let num = 12345; if (num[0] == 1) { console.log('+++'); } else { console.log('---'); // esto se ejecutará }

Como ya debes saber, el problema es que puedes acceder a los caracteres de una cadena, pero no a los dígitos de un número:

let num = 12345; console.log(num[0]); // mostrará undefined

Para resolver el problema, convirtamos nuestro número a cadena:

let num = 12345; let str = String(num); if (str[0] == 1) { console.log('+++'); // esto se ejecutará } else { console.log('---'); }

No es necesario introducir una nueva variable, se puede aplicar [0] directamente al resultado de la función String:

let num = 12345; if (String(num)[0] == 1) { console.log('correcto'); // mostrará 'correcto' } else { console.log('incorrecto'); }

Supongamos ahora que queremos verificar si el primer dígito es igual a 1, o a 2. Escribamos el código correspondiente:

let num = 12345; if (String(num)[0] == 1 || String(num)[0] == 2) { console.log('+++'); } else { console.log('---'); }

En este caso, resulta que la construcción String(num)[0] se repite dos veces. Esto, en primer lugar, es largo, y en segundo lugar, no es óptimo, ya que convertimos el número a cadena dos veces - la segunda vez resulta redundante, y los recursos del programa se gastan en ello.

Arreglemos el problema:

let num = 12345; let first = String(num)[0]; if (first == 1 || first == 2) { console.log('+++'); } else { console.log('---'); }

Se da un número entero. Escribe una condición que verifique si el último dígito de este número es igual a cero.

Supongamos que en la variable num se almacena un número. Determina si el número es par o no. El número será par si el último carácter es igual a 0, 2, 4, 6 o 8, e impar en caso contrario.

rukkmsuznl