Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafío: Hora de practicar

Contadores


  • JavaScript
function x() {
  let i = 1;
  while (i <= 10) {
    console.log(i);
    i++;
  }
}
function y() {
  let j = 10;
  while (j >= 0) {
    console.log(j);
    j--;
    }
  }
  function a() {
    let num = parseInt(prompt("Enter a number for the countdown (maximum 1000):"));
    if (isNaN(num) || num > 1000) {
    alert("Please enter a valid number (maximum 1000).");
    return;
    }
    let k = num;
    while (k >= 0) {
    console.log(k);
    k--;
    }
  }
  function b() {
    let num2 = parseInt(prompt("Enter a number for the count up (maximum 1000):"));
    if (isNaN(num2) || num2 > 1000) {
    alert("Please enter a valid number (maximum 1000).");
    return;
    }
    let l = 0;
    while (l <= num2) {
    console.log(l);
    l++;
    }
  }
x();
y();
 a();
 b();

  • HTML
<!DOCTYPE html>
<html lang="es">
<head>
  <meta charset="UTF-8">
  <title>Contadores JS</title>
</head>
<body>
  <h1></h1>
  <script src="x.js"></script>
</body>
</html>

Problematica


Implementé un límite máximo en los contadores porque me surgió la duda de qué ocurriría si se ingresara un número extremadamente grande en la consola. Tal como lo imaginaba, la página terminó crasheando. Para evitar este problema, añadí una condición en el código que restringe el valor máximo permitido.

Beneficios


  • Prevención de errores por desbordamiento.

Sugerencias


  • Me gustaría recibir algunas sugerencias para optimizar este tipo de código, así como ejemplos de casos de uso reales donde una validación de límite máximo en contadores pueda ser útil.
1 respuesta

Hola Donovan, espero que estés bien

¡Qué bueno que estás explorando y experimentando con JavaScript! Es una excelente manera de aprender. Has hecho bien al implementar un límite máximo para evitar que la página se bloquee debido a un número excesivamente grande. Aquí te dejo algunas sugerencias y ejemplos que podrían ayudarte a optimizar tu código y entender mejor el uso de validaciones de límite máximo:

  1. Validación de Entrada: Además de verificar si el número es mayor que 1000, podrías considerar validar que el número sea positivo, ya que un contador negativo podría no ser útil en algunos contextos. Por ejemplo:

    if (isNaN(num) || num > 1000 || num < 0) {
      alert("Please enter a valid number between 0 and 1000.");
      return;
    }
    
  2. Uso de Funciones: Para evitar la repetición de código, podrías crear una función separada para validar las entradas numéricas. Esto te ayudaría a mantener el código más limpio y fácil de mantener.

    function validateNumber(input, max) {
      if (isNaN(input) || input > max || input < 0) {
        alert(`Please enter a valid number between 0 and ${max}.`);
        return false;
      }
      return true;
    }
    
  3. Casos de Uso Reales: Las validaciones de límite máximo son muy comunes en aplicaciones donde se necesita proteger el sistema de entradas excesivas que podrían causar problemas de rendimiento o seguridad. Algunos ejemplos incluyen:

    • Formularios en línea que limitan la cantidad de caracteres en un campo de texto.
    • Aplicaciones de contabilidad que restringen el valor máximo de transacciones para evitar errores de entrada.
    • Juegos en línea que limitan el número de intentos o movimientos para mantener la jugabilidad equilibrada.
  4. Manejo de Errores: Considera manejar los errores de una manera que no interrumpa la experiencia del usuario. Podrías mostrar mensajes de error en la página en lugar de usar alert, lo que puede ser menos intrusivo.

Espero que estas sugerencias te sean útiles y te ayuden a seguir mejorando tus habilidades de programación. ¡Espero haber ayudado y buenos estudios!