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

Instrucciones de control JS: Arrays

Al trabajar con bucles en JavaScript, a veces necesitamos detener la ejecución antes de que termine o saltarnos ciertas iteraciones. Para esto, existen dos instrucciones especiales: break y continue. No son obligatorias, pero es importante conocerlas porque aparecen con frecuencia en el código de otros programadores.

La Instrucción break

La instrucción break se usa para salir completamente de un bucle. En cuanto se ejecuta, el programa deja de iterar y continúa con el código que se encuentra después del bucle.

Ejemplo: Detener un recorrido de un array

Supongamos que tenemos una lista de palabras y queremos detenernos cuando encontremos la palabra "stop":

const words = ['one', 'two', 'three', 'four', 'stop', 'five'];

for (const word of words) {
  if (word === 'stop') {
    break; // Sale del bucle inmediatamente
  }
  console.log(word);
}

Salida en la consola:

one
two
three
four

Cuando el bucle encuentra "stop", deja de ejecutarse y no imprime "five".

Alternativa sin break: Usar un while

El mismo comportamiento se puede lograr con un while, que es más adecuado cuando no sabemos cuántas iteraciones serán necesarias:

const words = ['one', 'two', 'three', 'four', 'stop', 'five'];

let i = 0;
while (words[i] !== 'stop') {
  console.log(words[i]);
  i += 1;
}

Este bucle se ejecuta mientras el elemento actual no sea "stop".

Cuidado con los bucle infinitos

⚠️ Si la condición en un while nunca se vuelve falsa, el bucle no se detendrá, causando un bucle infinito.
let i = 0;
// ¡Este código nunca terminará por sí solo!
while (true) {
  console.log(i);
  i += 1;
}

Para evitar esto, siempre hay que asegurarse de que la condición de salida se cumpla en algún momento.

La Instrucción continue

La instrucción continue omite la iteración actual y pasa a la siguiente. En otras palabras, en lugar de salir completamente del bucle (como break), simplemente salta el resto del código en la iteración actual y pasa a la siguiente.

Ejemplo: Filtrar elementos de un array

Veamos un caso donde queremos eliminar null de un array y conservar los demás valores:

const myCompact = (array) => {
  const result = [];

  for (const item of array) {
    if (item === null) {
      continue; // Salta esta iteración y pasa al siguiente elemento
    }

    result.push(item);
  }

  return result;
};

console.log(myCompact([1, null, 2, 3, null, 4]));

Salida en la consola:

[1, 2, 3, 4]

Cuando el bucle encuentra un null, la instrucción continue hace que el programa salte al siguiente elemento sin ejecutar result.push(item).

Alternativa sin continue: usar una condición

El mismo código se puede escribir de forma más sencilla sin continue:

const myCompact = (array) => {
  const result = [];

  for (const item of array) {
    if (item !== null) {
      result.push(item);
    }
  }

  return result;
};

Al evitar continue, reducimos una línea de código y el flujo de ejecución es más claro.

¿Cuándo Usar break y continue?

Si bien break y continue pueden hacer que el código sea más flexible, a menudo es posible escribir la misma lógica sin ellas, de una forma más clara. En la práctica:

Caso Uso recomendado
Necesitas detener un bucle cuando se cumple una condición. Usa break.
Quieres saltar una iteración sin salir del bucle. Usa continue.
Buscas una alternativa más clara sin romper el flujo del código. Considera reescribir el bucle sin break ni continue.

Resumen

  • La instrucción break detiene un bucle inmediatamente y continúa con el código siguiente.
  • La instrucción continue omite la iteración actual y pasa a la siguiente sin detener el bucle.
  • Cuando no conocemos de antemano la cantidad de iteraciones, un while puede ser más adecuado que un for.
  • Los bucles infinitos pueden ocurrir si no se define correctamente una condición de salida en un while.
  • A menudo, es posible escribir el código sin break y continue, haciéndolo más simple y fácil de entender.

Materiales adicionales

  1. Break / MDN Web Docs
  2. Continue / MDN Web Docs

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