JS: Bucle 'for'

La instrucción for es una de las estructuras de control más utilizadas en JavaScript, ya que permite crear bucles de forma controlada. Esta instrucción permite que un bloque de código se ejecute de forma repetida tantas veces como sea necesario, hasta que la condición especificada se evalúe como falsa.

A diferencia del bucle ‘while’, que suele utilizarse cuando se desconoce el número de repeticiones necesarias, el bucle for se utiliza cuando el número de iteraciones es fijo y conocido o fácilmente controlable. Por ejemplo, puede usarse para recorrer un rango definido de números, recorrer los índices de un array, crear estructuras repetitivas o acumular cálculos de forma controlada.

Estructura

El bucle for es una de las formas más compactas de crear iteraciones en JavaScript, ya que integra tres expresiones dentro de su encabezado: inicialización, condición y actualización. Esto lo hace más expresivo y flexible que el bucle while, aunque puede resultar más complejo para quien empieza.

Veamos detalladamente cada una de estas expresiones:

Inicialización: es la expresión que se ejecuta una sola vez, antes de que comience el bucle. Se utiliza para declarar e inicializar una variable que se usará como contador. Con esta variable indicamos el valor inicial del bucle.

Condición: es una expresión booleana que se evalúa antes de cada iteración. Comprueba si la condición es verdadera o no. Si es verdadera, se ejecutará el código indicado en el bucle. En caso contrario, el bucle termina. La condición indicada será evaluada al inicio de cada nueva iteración.

Actualización: es la expresión que se ejecuta al final de cada iteración, justo después de ejecutar el bloque de código. Se utiliza para incrementar o disminuir el valor de la variable que usamos como contador.

Algoritmo

El algoritmo del bucle for sigue un orden de ejecución muy concreto. Primero se ejecuta la parte de la «inicialización», que se evalúa una sola vez y permite declarar la variable de control. Después se evalúa la «condición», que se verifica antes de cada iteración. Si la condición es verdadera, se ejecutan las sentencias del bucle; pero si es falsa, el bucle termina de forma inmediata.

Diagrama de flujo de un bucle 'for'
Diagrama de flujo de un bucle 'for'.

Después de completarse la ejecución de las sentencias del bucle, JavaScript procede a evaluar la expresión de actualización. En este paso se modifica la variable de control, ya sea incrementándola o disminuyéndola, según el caso, con el fin de acercarla hasta el punto de finalización del bucle.

Una vez finalizada la actualización, el flujo de control del programa regresa al paso de evaluación de la «condición». Este ciclo se repite hasta que la condición inicial pase a ser falsa; en ese momento, el bucle habrá terminado.

Sintaxis

La instrucción for tiene una sintaxis compacta y bien definida. Comienza con la palabra reservada for y, entre paréntesis (), se especifican las tres expresiones que permiten controlar el bucle, separadas con un punto y coma (;).

for (inicialización; condición; actualización) {
  // Código que se ejecuta
  // si la condición es true
}

Después de especificar las expresiones de inicialización, condición y actualización, se utilizan las llaves {} para incluir el bloque de código del bucle. Mientras la condición sea verdadera, las sentencias de este bloque se ejecutarán.

Ejemplo: contador numérico

Un ejemplo básico que ayuda a comprender el funcionamiento de este tipo de bucles es la creación de un contador numérico. Para ello, primero se debe inicializar el bucle con un valor y establecer una condición comparativa. En este caso, la condición es < 5 (menor que 5). Luego, mediante el operador aritmético ++ incrementamos el contador de 1 en 1 en cada iteración.

for (let i = 1; i < 5; i++) {
  console.log('Iteración:', i);
}

Como la expresión de inicialización asigna el valor 1, el primer mensaje mostrado corresponde a ese mismo valor. Por lo tanto, este bucle realiza un total de cuatro iteraciones, produciendo la siguiente salida:

Iteración: 1
Iteración: 2
Iteración: 3
Iteración: 4

← Artículo anterior