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.

  • ๐Ÿ” Hacer mientras: Bucle mientras la condiciรณn sea verdadera.
  • โ›” Hacer hasta: El bucle se repite hasta que la condiciรณn se vuelve verdadera.
  • ๐ŸชŸ Mientras Wend: Bucle heredado sin opciรณn de salida.
  • ๐Ÿ”ข Para el siguiente: Bucle basado en contador con paso opcional.
  • ๐Ÿ“ฆ Para cada siguiente: Iterar sobre matrices, diccionarios o colecciones.
  • ๐Ÿค– Asistentes de IA: La IA genera bucles en VBScript y explica las salidas.

Bucles de VBScript

ยฟ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:

VBScript hacer mientras bucle

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รญ:

VBScript hacer hasta bucle

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 mientras bucle

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:

VBScript para el siguiente bucle

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รก:

Bucle de VBScript para el paso siguiente

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รก:

Bucle de VBScript para el paso siguiente

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รก

VBScript para cada siguiente bucle

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:

VBScript para cada siguiente bucle

Haga clic en Aceptar y su resultado se verรก asรญ:

VBScript para cada siguiente bucle

Preguntas Frecuentes

Do While se ejecuta mientras sea verdadero. Do Until se ejecuta mientras sea falso.

Sรญ. La IA traduce VBScript a PowerShell. Python, o JavaGuiรณn.

La IA seรฑala los incrementos faltantes y sugiere instrucciones Exit Do.

Utilice Exit Do o Exit For. Wend no tiene opciรณn de salida.

Sรญ, pero se prefiere Do While por su compatibilidad con Exit Do.

Para cada clave en dict.Keys, entonces accede a dict.Item(clave).

Microsoft Lo descontinuรณ. Use PowerShell o Python para nuevos trabajos.

Para i = 1 a 10 Paso 2. Los pasos negativos caminan de arriba hacia abajo.

Resumir este post con: