Regístrate para acceder a más de 15 cursos gratuitos de programación con un simulador

Repaso 6. Repetir acciones con bucles Fundamentos de JavaScript

Ahora ya sabes escribir programas que toman decisiones, repiten tareas y procesan información paso a paso. Tu código piensa, reacciona y se adapta, igual que tú.

Ejemplo: detectar spam

Supón que estás creando una app donde los usuarios deben elegir un nombre para su perfil. Queremos evitar que usen ciertas letras (por ejemplo, ‘x’, ‘z’ o ‘q’). Vamos a escribir una función que revise si un nombre contiene alguna de esas letras prohibidas.

const contieneLetraProhibida = (nombre) => {
  const letrasProhibidas = ['x', 'z', 'q'];
  let i = 0;
  let hayLetraProhibida = false;

  while (i < nombre.length) {
    const letraActual = nombre[i];
    let j = 0;

    while (j < letrasProhibidas.length) {
      if (letraActual === letrasProhibidas[j]) {
        hayLetraProhibida = true;
      }
      j++;
    }

    i++;
  }

  return hayLetraProhibida;
};

console.log(contieneLetraProhibida('Max'));    // true
console.log(contieneLetraProhibida('Mario'));  // false
console.log(contieneLetraProhibida('Luiz'));   // true

Vamos línea por línea

🔁 Recorres una lista con while. Revisas cada letra prohibida una por una, en orden.

🔍 Dentro de eso, recorres la lista de letras prohibidas. Por cada letra del nombre, revisas si coincide con alguna prohibida.

⚖️ Comparas con if y ===. Si hay coincidencia, marcas que el nombre tiene una letra inválida.

📦 Usas una variable para guardar el resultado. hayLetraProhibida se activa si encontramos algo malo.

🚦 Decides con return al final. La función dice si el nombre pasa la validación o no.


Trabajo independiente

Este ejercicio no es obligatorio, pero te ayudará muchísimo a practicar lo que acabas de aprender. Puedes probarlo directamente en la consola del navegador.

✏️ Ejercicio 6: Validar nombre de producto

Imagina que eres administrador de una tienda y cargas nuevos productos al sistema.
Necesitamos evitar que los nombres contengan ciertos símbolos no permitidos.

Instrucciones:

  • Crea una función esNombreValido(nombreProducto)
  • Debe devolver false si el nombre contiene alguno de estos símbolos: @, # o $
  • Si el nombre está limpio, debe devolver true
  • Hazlo usando while, sin usar includes() ni for
  • Usa un array simbolosProhibidos y dos índices: uno para recorrer el nombre y otro para los símbolos
  • Prueba la función con al menos tres nombres distintos, uno de ellos con símbolos prohibidos

🎯 Objetivo:
Reforzar el uso de bucles anidados con `while`, validación paso a paso y estructuras de control.

✅ Resultado esperado:
Ver si el nombre del producto es válido o no, en base a la presencia de símbolos prohibidos.

Para acceder completo a curso necesitas un plan básico

El plan básico te dará acceso completo a todos los cursos, ejercicios y lecciones de Códica, proyectos y acceso de por vida a la teoría de las lecciones completadas. La suscripción se puede cancelar en cualquier momento.

Obtener acceso
130
cursos
1000
ejercicios
2000+
horas de teoría
3200
test

Obtén acceso

Cursos de programación para principiantes y desarrolladores experimentados. Comienza tu aprendizaje de forma gratuita

  • 130 cursos, 2000+ horas de teoría
  • 1000 ejercicios prácticos en el navegador
  • 360 000 estudiantes
Al enviar el formulario, aceptas el «Política de privacidad» y los términos de la «Oferta», y también aceptas los «Términos y condiciones de uso»

Nuestros graduados trabajan en empresas como:

Bookmate
Health Samurai
Dualboot
ABBYY