for (Instrucción)
Ejecuta un bloque de instrucciones mientras la condición especificada sea igual a True.
for (initialization; test; increment)
...statement
Argumentos
initialization
Obligatorio. Expresión. Esta expresión se ejecuta sólo una vez, antes de que se ejecute el bucle.test
Obligatorio. Expresión booleana. Si al evaluar test devuelve True, se ejecuta statement. Si al evaluar test devuelve False, el bucle termina.increment
Obligatorio. Expresión. La expresión de incremento se ejecuta al final de cada ciclo de un bucle.statement
Opcional. Instrucción que se va a ejecutar si el argumento test es True. Puede ser una instrucción compuesta.
Comentarios
Normalmente, el bucle for se utiliza para ejecutar un bucle un número determinado de veces. Un bucle for es útil para iterar en matrices y realizar procesamientos secuenciales.
La prueba de una expresión condicional se produce antes de que se ejecute el bucle. Por consiguiente, una instrucción for se ejecuta cero o más veces.
En cualquier línea del bloque de instrucciones de un bucle for, se puede usar la instrucción break para salir del bucle o se puede usar la instrucción continue para transferir el control a la siguiente iteración del bucle.
Ejemplo
En el ejemplo siguiente, la instrucción for ejecuta las instrucciones entre paréntesis de la siguiente manera:
Primero, se evalúa el valor inicial de la variable i.
A continuación, mientras el valor de i sea menor o igual que 9, se ejecutarán las instrucciones document.write y se volverá a evaluar i.
Cuando el valor de i sea mayor que 9, la condición pasará a ser false y se transferirá el control fuera del bucle.
// i is set to 0 at the start and is incremented by 1 at the
// end of each iteration.
// The loop terminates when i is not less than or equal to
// 9 before a loop iteration.
var s = "";
for (var i = 0; i <= 9; i++)
{
s += i + " ";
}
print (s);
// Output: 0 1 2 3 4 5 6 7 8 9
Todas las expresiones de la instrucción for son opcionales. En el ejemplo siguiente, las instrucciones for implementan un bucle infinito y se usa una instrucción break para salir del bucle.
var s = "";
var j = 0;
for (;;)
{
if (j >= 5)
{
break;
}
j++;
s += j + " ";
}
print (s);
// Output: 1 2 3 4 5