Saltar al contenido
Curso de JavaScript
Todos los cursos Ir al ejercicio →

Bucles

  • ⏱ 40 minutos
  • 📶 Nivel: principiante
  • 🧩 Incluye ejercicio

💡 🎯 Al terminar esta lección podrás…

  • Repetir tareas con for, while y do…while.
  • Recorrer arrays y textos con for…of.
  • Controlar el flujo con break y continue.
  • Aplicar los patrones de acumular, contar, buscar y construir.

1.Por qué repetir

Muchas tareas consisten en hacer lo mismo varias veces: mostrar los números del 1 al 100, recorrer una lista de productos, sumar todos los precios, buscar un nombre. Escribir cada repetición a mano sería largo, aburrido y propenso a errores. Los bucles le piden a la computadora que repita un bloque de código mientras se cumpla una condición.

BucleÚsalo cuando…
forSabes cuántas veces repetir
whileRepites mientras una condición sea verdadera
do…whileQuieres ejecutar al menos una vez
for…ofRecorres los elementos de un array o texto
for…inRecorres las claves de un objeto
forEach, map…Recorres arrays con funciones (lección 6)

2.El bucle for

Anatomía de un for
for (let i = 0; i < 5; i++) {
  console.log("Vuelta", i);
}
//   ① inicio     ② condición   ③ avance
  1. Inicio: se ejecuta una sola vez al principio (let i = 0).
  2. Condición: se evalúa antes de cada vuelta; si es falsa, el bucle termina.
  3. Cuerpo: el código entre llaves se ejecuta.
  4. Avance: se ejecuta al final de cada vuelta (i++). Luego se vuelve a la condición.
▶ Cuenta y suma
Consola

💡 Consejo · Sigue el bucle con papel

Si no entiendes un bucle, haz una tabla de seguimiento: una columna por variable y una fila por vuelta. Anota cuánto valen i y suma en cada vuelta. En poco tiempo lo harás de cabeza.

3.while y do…while

Repetir mientras se cumpla una condición
let intentos = 0;
while (intentos < 3) {
  console.log("Intento", intentos + 1);
  intentos++;
}

let n = 10;
do {
  console.log("Este se ejecuta una vez aunque n sea 10");
} while (n < 5);

while evalúa la condición primero: si desde el inicio es falsa, no entra nunca. do…while ejecuta primero y evalúa después: entra siempre al menos una vez.

▶ Dividir hasta llegar a 1
Consola

⚠️ Importante · Bucles infinitos

Si la condición nunca se vuelve falsa, el bucle no termina y la página se congela. Siempre asegúrate de que algo dentro del bucle (un contador, una lectura) acabará haciendo falsa la condición. Si pasa en tu navegador, cierra la pestaña. En los editores de este curso, recarga la página.

4.for…of: recorrer elementos

Cuando tienes un array o un texto, for…of te entrega cada elemento directamente, sin contadores:

▶ Recorrer listas y textos
Consola
for…in: las claves de un objeto
const persona = { nombre: "Ana", edad: 30, ciudad: "Lima" };
for (const clave in persona) {
  console.log(clave, "=", persona[clave]);
}

📌 Nota · for…of y for…in no son lo mismo

for…of recorre valores (arrays, textos); for…in recorre claves (objetos). Usar for…in con arrays da los índices como texto y puede incluir propiedades inesperadas: evítalo con arrays.

5.break y continue

InstrucciónQué hace
breakSale del bucle por completo
continueSalta a la siguiente vuelta, ignorando el resto de esta
▶ Saltar y salir
Consola

6.Bucles anidados

Un bucle dentro de otro repite el interior por cada vuelta del exterior. Sirve para tablas, cuadrículas y combinaciones:

▶ Tabla de multiplicar y dibujo
Consola

💡 Consejo · Cuidado con el coste

Un bucle dentro de otro con 1000 vueltas cada uno hace un millón de operaciones. Es normal con pocos datos, pero ten presente cómo crece cuando manejes listas enormes.

7.Patrones que usarás siempre

PatrónIdeaEjemplo
AcumularUna variable que va sumando o juntandototal += precio
ContarAumentar un contador cuando algo se cumpleif (n % 2 === 0) pares++
BuscarRecorrer hasta encontrar y salir con break/returnif (x === buscado) return i
Máximo / mínimoRecordar el mejor valor vistoif (n > mayor) mayor = n
ConstruirIr armando un array o texto nuevoresultado.push(n * 2)
▶ Los cinco patrones
Consola

8.Errores frecuentes

📒 Apuntes para llevar

  • Los bucles repiten un bloque de código mientras se cumpla una condición.
  • for (inicio; condición; avance) es ideal si sabes cuántas vueltas dar; while repite mientras la condición sea verdadera; do…while entra al menos una vez.
  • for…of recorre los valores de un array o texto; for…in recorre las claves de un objeto.
  • break sale del bucle y continue salta a la siguiente vuelta.
  • Un bucle puede contener otro: el interior se repite por cada vuelta del exterior.
  • Cinco patrones: acumular, contar, buscar, máximo/mínimo y construir.
  • Evita los bucles infinitos y los errores «por uno» revisando siempre la condición y el avance.
  • Declara las variables acumuladoras fuera del bucle.

9.Glosario

TérminoSignificado
BucleEstructura que repite un bloque de código.
IteraciónCada vuelta de un bucle.
ContadorVariable que cuenta las vueltas (i).
AcumuladorVariable que va guardando un resultado parcial (suma).
Bucle infinitoBucle cuya condición nunca se vuelve falsa.
break / continueSalir del bucle / saltar a la siguiente vuelta.
Error por unoFallo de un elemento de más o de menos en los límites.
AnidadoUn bucle colocado dentro de otro.

🧠 Comprueba lo aprendido

Elige una respuesta en cada pregunta. Verás al instante si acertaste y por qué.

¿Cuántas veces se ejecuta el cuerpo de for (let i = 0; i < 4; i++)?

¿Qué diferencia hay entre while y do…while?

Quieres recorrer los valores de un array. ¿Cuál es la mejor opción?

¿Qué hace continue dentro de un bucle?

Un bucle while (x < 10) no modifica nunca x dentro del cuerpo. ¿Qué ocurre?

Tu progreso se guarda en este navegador y se refleja en el índice del curso.

💡 🚀 ¡Ahora te toca!

La práctica fija lo aprendido. Pasa al ejercicio de esta lección.

Ir al ejercicio