Loop en AS3. For
Saturday, 23. January 2010
En anteriores artículos ha quedado claro cómo los loops, también conocidos como búcles son herramientas de programación de las cuales disponemos en ActionScript y que nos permiter reducir la escritura y repetición de código cuando hacemos nuestras aplicaciones en Flah y Flex. Después de haber visto cómo funcionan While y Do-While, vamos a ver como utilizar el loop for.
El loop for nos permite realizar una acción un número específico de veces. Este numero va a depender de un elemento que conocemos como iterador, y es una variable o elemento encargado de ir llevando la cuenta de cuántas repeticiones hemos realizado. Por lo tanto, lo primero que debemos definir es este iterador, después de usar la palabra clave for. Podemos usar una variable definida antes, o podemos definirla en el mismo loop, pero en todo caso debe estar definida antes de ser utilizada. Normalmente se utiliza la variable ‘i’ como iterador de la siguiente manera:
for (var i=0;i<8;i++){
//acciones
}
De esta forma estamos definiendo el iterador (var i=0), y le estamos diciéndo cual es la condición que queremos que cumpla (i<8 o ‘mientras que i sea menor que 8′), y la variación que queremos que tenga después de cada repetición (i++ o ‘sumarle 1 a i’). Por lo tanto esta línea quiere decir, en palabras sencillas “realizar las acciones entre las llaves 8 veces”. La condición puede ser cualquiera que necesitemos. Veamos un ejemplo sencillo:
Ejemplo:
Mostrar los números del 1 al 100. Es un ejemplo muy sencillo. Para hacerlo de forma manual podríamos usar lo siguiente:
var numero:uint=1;
trace(numero);
numero++;
trace(numero);
numero++;
trace(numero);
...
...
...
Y repetir esto 100 veces (utilizando 200 líneas). Con el loop for lo hacemos de la siguiente forma:
var numero:uint=1;
for(var i=0;i<100;i++){
trace(numero);
numero++;
}
o aún más sencillo:
for(var i=1;i< =100;i++){
trace(i);
}
En tres líneas, hemos sintetizado 200. Le estamos diciendo: "Digamos que i es igual a 1, y mientras i sea menor o igual a 100, mostramos el número y le sumamos 1". Este ejemplo es sólo para dejar muy claro la utilidad de una herramienta muy sencilla de usar, y muy potente. Una instrucción con la que podríamos ahorrarnos incluso miles de líneas.
De momento es todo por éste artículo. En el próximo artículo podremos ver como utilizar el loop for para referirnos a cada elemento de un array, dándole una mayor funcionalidad a éste loop.
Saludos.
EsK. Samuel Jiménez.






Daniel Says:
Dabilon Says:
De antemano mil gracias por el blog….
he estado practicando algunos de los ejercicios que has dejado, y este no fuciona correctamente, al escribirlo tal cual como lo tienes, en el compilador en vez de escribir los numeros del 1 al 100, escribe 100 veces 1,
hice unas pruebas y lo solucione asi:
var numero:uint=1;
for(var i=0;i<100;i= numero++){
trace(numero);
}
eskombro Says:
Tienes razón, me había saltado una línea. Ya esta solucionado. Te mostraba 100 veces el numero 1 porque faltaba una linea muy sencilla: numero++.
Aunque ya la puse arriba, queda así:
var numero:uint=1;
for(var i=0;i<100;i++){
trace(numero);
numero++;
}
Gracias por informarme del error.
Saludos
GUSUM Says:
Hola Samuel,
Creo que al último ejemplo le sobra el espacio después del menor que.
Un saludo y gracias por el artículo!
Saludos!