Въведение в Loops във VBScript

Looping ни позволява периодично да изпълняваме набор от оператори в код. Loops повтарят тези изявления, докато не бъде изпълнено определено условие. Това условие може да доведе или до истинно, или до невярно, или да доведе до точен брой пъти. Някои цикли се изпълняват, като предварително знаят броя повторения, които цикълът трябва да предприеме, а някои не. В зависимост от тези условия можем да изберем цикъла, който искаме да използваме в нашата програма. За цикли се използват, когато знаем колко пъти искаме да повторим блока си от код и Do Loops се използват, когато не знаем колко пъти искаме да повторим и имаме конкретно условие, което се превръща в истинно или невярно, въз основа на която прекратяваме цикъла си. В тази статия ще обсъдим различни видове цикли в VBScript.

Видове цикли в VBScript

В VBScript имаме следните цикли:

  1. Правете докато цикъл
  2. Правете до цикъла
  3. Докато Wend Loop
  4. За следващия цикъл
  5. За цикъл за следваща стъпка
  6. За всеки следващ цикъл

1. Правете докато цикъл

Когато броят на пъти, които искаме да повторим чрез блок от код, не е сигурен, използваме Do while Loop. Например, ако искаме да отпечатаме „Hello“ на конзолата, защото когато променливата стойност на „a“ е по-малка от 6, тогава използваме цикъл „Докато“.

Код:


Dim a
a=1
Do While a<6
document.write("Hello!")
a=a+1
Loop

При изпълнение на това парче код получаваме:

Hello!Hello!Hello!Hello!Hello!

За да разберем по-добре, нека разгледаме работата на кода. Кодът в цикъла се изпълнява пет пъти, тъй като стойността на 'a' се увеличава всеки път. Контролът излиза от цикъла, когато стойността на 'a' стане 6 и условието a <6 вече не е изпълнено. Ако не напишем реда a = a + 1, цикълът ни се превръща в Безкраен цикъл, тъй като няма условие за изход за нашия цикъл. Безкрайните контури могат да сринат нашите системи. Следователно, трябва да сме сигурни, че в нашия цикъл има условие за излизане. Имаме вариация в цикъла Do while, където цикълът винаги се изпълнява поне веднъж. Да предположим, че присвояваме променливата 'a' със стойност 6 в самото начало. Тогава с горния пример, контурният код няма да бъде изпълнен нито веднъж. Но с вариацията по-долу, цикълът винаги се изпълнява поне веднъж.

Код:


Dim a
a=6
Do
document.write("Hello!")
a=a+1
Loop While a<5

С този код получаваме изхода като "Здравей!" отпечатана само веднъж. Проверяваме състоянието на Do while Loop след пускане на цикъла веднъж.

2. Правете до цикъла

Подобно на Do while Loop, Do Do Loop също се изпълнява, когато не знаем точната фигура на повторенията, които да се изпълняват на цикъла. Разликата се крие в синтаксиса и състоянието.

Код:


Dim a
a=1
Do Until a=6
document.write("Hello!")
a=a+1
Loop

Този код ни дава същия резултат като първата програма в циклите Do while. Резултатът се показва като: 'Hello!Hello!Hello!Hello!Hello!'

Също така имаме подобна промяна в цикъла Do till, както имахме в цикъл Do while, където цикълът се изпълнява поне веднъж. В допълнение, ние имаме възможност да излезем от нашите Do Loops, преди изпълнението да бъде извършено. Можем да използваме оператора Exit Do за излизане от цикъла. Например, ако искаме да излезем от цикъла, когато 'a' се превърне в 4, тогава можем да вмъкнем оператор Exit Do, както следва:

Код:


Dim a
a=1
Do Until a=6
If a=4 Then Exit Do
document.write("Hello!")
a=a+1
Loop

Резултатът от този код ще бъде:

Hello!Hello!Hello!

3. Докато Wend Loop

Въпреки че цикълът на Wend е като цикъла Do while, той обаче не се използва толкова често. Това е така, защото цикълът на Wend не е толкова организиран, колкото последният. Това е причината, поради която разработчиците предпочитат Do while Loop.

Код:


Dim a
a = 1
While a < 6
document.write("Hello!")
a=a+1
Wend

При изпълнение на този код получаваме:

Hello!Hello!Hello!Hello!Hello!

4. For-Next Loop

Този цикъл се използва, когато знаем колко пъти искаме да изпълним блока от код. В For Loop имаме променлива на брояч, която ни казва колко пъти трябва да се изпълни цикъла. Следващият оператор увеличава променливата на брояча с една.

Код:

For i = 1 To 5
document.write(" & i & ")
Next

При изпълнение на този код получаваме:

1

2

3

4

5

5. Примка за следваща стъпка

В този цикъл променливата на брояча става автоматично нагоре. Можем да определим стойността, с която нашият брояч трябва да се увеличи.

Код:

For i = 1 To 5
document.write(" & i &")
Next

Резултатът от този код ще бъде:

1

3

5

Подобно на Do Loop, ние можем да излезем от For Loop в средата, като използваме оператора Exit for. Например:

Код:


For i = 1 To 5 Step 3
If i=4 Then Exit For
document.write(" & i & ")
Next

Резултатът от този код ще бъде:

1

6. За всеки следващ цикъл

Когато желаем да повторим кода на цикъла за всеки елемент от колекция или VBS масив, използваме за всеки следващ цикъл.

Код:


Dim employees(3)
employees (0)="A"
employees (1)="B"
employees (2)="C"
employees (3)="D"
For Each i In employees
document.write(i)
Next

При изпълнение на горния код ще получим:

А

B

° С

д

Цикълът може да се използва за стартиране на определен блок от код отново и отново. Използваме Do Loops и while Loop, когато вече е известен броят на повторенията на цикъла. Използваме For Loops, когато знаем точното време, в което трябва да се изпълни кодът на цикъла.

Препоръчителни статии

Това е ръководство за Loops във VBScript. Тук обсъждаме Въведение, Синтаксис, видове цикли в VBScript, примерни кодове и изход. Можете да разгледате и другите ни предложени статии -

  1. Какво е VBScript?
  2. Команди VBScript
  3. JavaScript срещу VBScript
  4. VBScript струнни функции
  5. Видове бримки в PowerShell