Bucles de VBScript: hacer mientras, hacer hasta, mientras, para cada uno (ejemplo)
โก Resumen inteligente
El libro "VBScript Loops" explica cรณmo repetir acciones utilizando las estructuras Do While, Do Until, While Wend, For Next, For Step y For Each, abarcando la sintaxis, las condiciones de salida y ejemplos.

ยฟPor quรฉ se utilizan bucles en VBScript?
Los bucles se utilizan para ejecutar el mismo bloque de cรณdigo una y otra vez. Hay varios tipos de bucles en VBScript.ping declaraciones. Algunas de las expresiones VBScriptping Las declaraciones son Do While, Do Until, ForโฆNext, etc. Entonces, ยฟcรณmo decidirรกs cuรกl elegir?ping ยฟQuรฉ declaraciรณn utilizar para su necesidad?
Al ejecutar los bucles, es posible que sepa o no cuรกntas veces desea ejecutar un conjunto de instrucciones. Por ejemplo, desea calcular la suma de dos nรบmeros diez veces. En este caso, ya sabe que desea repetir un bloque de cรณdigo 10 veces. Supongamos que desea calcular la suma de dos nรบmeros hasta que una variable en particular sea verdadera. Aquรญ, no sabe cuรกntas veces se ejecutarรก el bucle. Por lo tanto, segรบn conozca o no el nรบmero de ejecuciones, puede utilizar diferentes tipos de bucles.ping Declaraciones.
ParaโฆSiguiente baรฑoping Las instrucciones se utilizan si se desea repetir un bloque de cรณdigo un nรบmero finito de veces, es decir, si se conoce el nรบmero de veces que se desea repetir el bloque de cรณdigo.
Hazlo mientras y hazlo hasta queping Las sentencias se utilizan cuando se desea repetir un bloque de cรณdigo hasta que una condiciรณn se vuelva verdadera o falsa, es decir, cuando no se conoce la cantidad de veces que se desea ejecutar el bloque de cรณdigo.
Echemos un vistazo a estos baรฑosping declaraciones una por una.
VBScript hacer mientras bucle
Si no sabe la cantidad de veces que necesita ejecutar un bloque de cรณdigo, entonces utilizarรก los bucles Do While. Por ejemplo, desea generar el mensaje "Bienvenido" mientras el valor de la variable x es menor que 5. En tal caso, se utilizarรก el bucle Do While.
<script type="text/vbscript"> Dim x x=1 Do While x<5 document.write("Welcome.") x=x+1 Loop </script>
Si intentas ejecutar el cรณdigo, obtendrรกs un resultado como este:
El bloque se ejecuta cuatro veces (cuando x=1,2,3 y 4) y el ciclo termina cuando el valor de x se convierte en 5. Si olvidas la declaraciรณn x=x+1, entonces tu ciclo se convertirรก en un ciclo sin fin. uno. Este tipo de bucles se conoce como bucles infinitosLos bucles infinitos podrรญan incluso bloquear su sistema. Por lo tanto, al usar bucles Do Whileping declaraciones, debes asegurarte de que haya algรบn cรณdigo que haga el looping condiciรณn que se cumple en algรบn momento u otro.
Si asigna el valor 7 a la variable x al principio, el bloque de cรณdigo no se ejecutarรก ni una sola vez. Supongamos que desea ejecutar el bloque de cรณdigo al menos una vez independientemente de la condiciรณn, entonces puede usar el bucle Do While. Cambie el cรณdigo asรญ:
Ejemplo de VBScript:
<script type="text/vbscript"> Dim x x=7 Do document.write("Welcome.") x=x+1 Loop While x<5 </script>
Si ejecuta este cรณdigo, recibirรก el mensaje "Bienvenido" solo una vez. Aquรญ la condiciรณn se verifica solo despuรฉs de ejecutar el bucle una vez.
VBScript hacer hasta bucle
El bucle 'Do Until' tambiรฉn se utiliza cuando no se sabe el nรบmero de veces que se necesita para ejecutar un bloque de cรณdigo. El primer bloque de cรณdigo en el bucle Do Until (Do While x<5) es equivalente al bloque de cรณdigo que se proporciona a continuaciรณn.
<script type="text/vbscript"> Dim x x=1 Do Until x=5 document.write("Welcome.") x=x+1 Loop </script>
Esto le darรก el mismo resultado que el primer bloque de cรณdigo en el bucle Do While. Verรก el mensaje de bienvenida cuatro veces. Similar a Doโฆ..Loop While, tambiรฉn tenemos que DoโฆLoop Until.
Si desea salir de un bucle Do While o Do Until intermedio, puede utilizar la instrucciรณn Exit Do. Supongamos que desea salir del bloque cuando el valor de x sea 3 en el programa anterior, entonces necesita codificar asรญ:
<script type="text/vbscript"> Dim x x=1 Do Until x=5 If x=3 Then Exit Do document.write("Welcome.") x=x+1 Loop </script>
Si ejecuta el cรณdigo, su salida se verรก asรญ:
Aquรญ se sale del ciclo cuando el valor de x se convierte en 3.
VBScript mientras bucle
El bucle While...Wend es similar al bucle Do While, aunque no se utiliza habitualmente. As Do While estรก mรกs estructurado que While.....Wend loop, los programadores suelen utilizar declaraciones Do While.
<script type="text/vbscript"> Dim x x = 1 While x < 5 document.write("Welcome.") x=x+1 Wend </script>
La salida serรก
VBScript para el siguiente bucle
El bucle For-Next se puede utilizar para ejecutar un bloque de cรณdigo una cantidad especรญfica de veces. El โbucle For de VBScriptโ especifica la variable del contador y sus valores de inicio y fin. La siguiente declaraciรณn aumenta la variable del contador en uno.
For i = 1 To 5 document.write("The number is " & i & " ") Next
Si ejecuta el cรณdigo, obtendrรก un resultado como este:
Bucle de VBScript para el paso siguiente
De forma predeterminada, la variable del contador se incrementa en uno. Si desea aumentar o disminuir la variable del contador segรบn el valor que especifique, puede usar el bucle Forโฆ.Stepโฆ.Next. Supongamos que en el cรณdigo anterior desea incrementar el contador en 2 y luego modificar su cรณdigo de esta manera:
For i = 1 To 5 Step 2 document.write("The number is " & i & "<br />") Next </script>
La salida de este cรณdigo serรก:
Si desea salir de un bucle Para el siguiente o Para el paso siguiente en el medio, puede usar Salir para la declaraciรณn. Supongamos que desea salir del bloque cuando el valor de i sea 3 en el programa anterior, entonces necesita codificar asรญ:
<script type="text/vbscript"> For i = 1 To 5 Step 2 If i=3 Then Exit For document.write("The number is " & i & "<br />") Next </script>
La salida serรก:
VBScript para cada siguiente bucle
Si desea repetir un bloque de cรณdigo para cada elemento de una colecciรณn o para cada elemento de una matriz VBS, entonces necesita usar el bucle ForโฆEachโฆNext.
<script type="text/vbscript"> Dim students(4) students(0)="John" students(1)="Hanah" students(2)="Sarah" students(3)="Kevin" students(4)="Emma" For Each x In students document.write(x & "<br />") Next </script>
La salida del cรณdigo especificado anteriormente serรก
Code Ejemplo
<html> <head> <script type="text/vbscript"> Dim name, length name = InputBox("Enter your name") length = Len(name)โGives length of the input string For i = 1 To length txt = Mid(name,i,1)'Returns a specified number of characters from a string, the first parameter is the string, second parameter is the starting position and third parameter is the number of characters to return If txt="a" or txt="A" or txt="e" or txt="E" or txt="i" or txt="I" or txt="o" or txt="O" or txt="u" or txt="U" Then counter = counter+1 End If Next document.write("Hi " & name & "!!!Your name contains " & counter & " vowels.") </script> </head> <body> </body> </html>
Guarde el archivo como loop.html en la ubicaciรณn que prefiera. Ahora abra el archivo en Internet Explorer y aparecerรก un cuadro que le solicitarรก que ingrese su nombre. Ingrese un nombre, por ejemplo Aaron, de esta manera:
Haga clic en Aceptar y su resultado se verรก asรญ:




