Javascript Básico

Ciclos/Bucles

Un bucle o ciclo, en programación, es una sentencia que se realiza repetidas veces a un trozo aislado de código, hasta que la condición asignada a dicho bucle deje de cumplirse.

Ciclo for

for (inicia; condicional; incremento) { 
    //sentencias
}
Iterar varias veces sobre una variable.
for(var i = 1; i <= 5; i++)
{
    console.log("Valor de i es: " + i);
}
/*Imprime
Valor de i es: 1
Valor de i es: 2
Valor de i es: 3
Valor de i es: 4
Valor de i es: 5
Recorrer un array
var array = [23, 34, 56, "Hola", "Mundo"];
for(var i = 0; i < array.length; i++)
{
    console.log("Valor es: " + array[i]);
}
/*Imprime
Valor es: 23
Valor es: 34
Valor es: 56
Valor es: Hola
Valor es: Mundo
*/
`

TIP


  • Como se puede apreciar en el ejemplo anterior se ha usado la propiedad length la cual indica el tamaño del vector.
  • Es importante recordar que los arrays su posición inicial es cero, por lo tanto el último valor del array será el tamaño del mismo menos uno, en este caso se cumple debido al uso del operador <el cual no incluye el último número, diferenre al operador <=

Ciclo for/in

Este ciclo es usado para recorrer arrays, la "ventaja" del mismo tiene que ver con que no es necesario indicar el inicio y final del ciclo.

var numeros = [1,2,3,4,5];
for (x in numeros) {
    console.log(numeros[x]);
}
/*Imprime
1
2
3
4
5
*/

Ciclo for/each

Este ciclo hace uso de una función anónima para realizar el recorrido de la información.

var a = ["a", "b", "c"];
a.forEach(function(valor)
{
    console.log(valor);
});
/*Imprime
a
b
c
*/

Tip


El for/eaches un ciclo relativamente nuevo, por lo que sólo los navegadores modernos lo soportan. Más información: https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Array/forEach


Ciclo while()

Ciclo que ejecuta una sentencia especificada mientras cierta condición se evalúe como verdadera. Dicha condición es evaluada antes de ejecutar la sentencia

var i = 1;
var txt = "";
while (i < 5) {
    txt += "El número es: " + i + "\n";
    i++;
}
console.log(txt);
/*Imprime
El número es: 1
El número es: 2
El número es: 3
El número es: 4
*/

Ciclo do/while()

Ciclo que ejecuta una sentencia especificada, hasta que la condición de comprobación se evalúa como falsa.

La condición se evalúa después de ejecutar la sentencia, dando como resultado que la sentencia especificada se ejecute al menos una vez, siendo una de las principales diferencias con el ciclo while()

var i = 1;
var txt = "";
do {
    txt += "El número es: " + i + "\n";
    i++;
}
while (i <= 5);
console.log(txt);
/*Imprime
El número es: 1
El número es: 2
El número es: 3
El número es: 4
El número es: 5
*/

TIP


Es posible crear ciclos infinitos dando una respuesta siempre verdadera y "romperlos" haciendo uso del break;

do
{
    //Realiza acciones...
    if(sentencia)
    {
        break;
    }
}while(1);