vbscript loops loop
Wprowadzenie do pętli w VBScript: samouczek VBScript nr 5
W moim poprzednim samouczku w tym Seria samouczków VBScript , dowiedzieliśmy się o „ Instrukcje warunkowe w języku VBScript „. W tym samouczku omówię różne struktury zapętlone które są używane w VBScript.
Pętla jest ważnym tematem w VBScript, dlatego powinieneś dobrze rozumieć pętle, aby uzyskać lepsze wrażenia z programowania i przejść do kolejnych tematów w łatwy sposób.
Ten samouczek zawiera pełny przegląd znaczenia pętli i ich różnych typów wraz z jasnymi przykładami ułatwiającymi zrozumienie.
Czego się nauczysz:
Co to są pętle?
Ogólnie rzecz biorąc, Loop oznacza powtarzanie czegoś kilka razy. W ten sam sposób pętle w VBScript oznaczają te instrukcje w kodzie, które mogą być powtarzane kilka razy, aż do końca określonego warunku.
Podczas używania pętli następuje sekwencja, a instrukcja znajdująca się na początku kodu jest wykonywana jako pierwsza i tak dalej. Ilekroć w kodzie wymagane są powtórzenia niektórych instrukcji, pętle są używane, aż warunek zostanie spełniony.
Podam prosty przykład, aby łatwo wyjaśnić tę koncepcję.
Przykład:
Jeśli chcesz wysłać zaproszenie do 10 osób z tą samą wiadomością, możesz użyć „pętli for” w tym przypadku, ponieważ licznik jest ustalony i wiesz, że wiadomość ma zostać powtórzona 10 razy.
Składnia pętli będzie następująca:
Dla i = 1 do 10
Msgbox „Proszę przyjść na moje przyjęcie”
Kolejny
Przejdźmy do różnych typów pętli obsługiwanych przez VBScript.
Różne typy pętli w języku VBScript
Istnieje kilka typów pętli w języku VBScript, których można używać w różnych scenariuszach w oparciu o wymagania kodu.
Ogólnie rzecz biorąc, istnieją 3 typy pętli w języku VBScript, które są następujące:
- Dla pętli
- Do Loop
- While Loop
Te typy zawierają również inne pętle. Omówmy je jeden po drugim.
# 1) Dla pętli
Jest to najbardziej podstawowa i najczęściej używana pętla. Jest to używane w tych scenariuszach, w których znasz ustaloną liczbę razy do wykonania instrukcji w kodzie, tj. Jest kilka stała liczba razy / stała liczba iteracji spełnić warunek.
Przeczytaj także = >> For Loop w Javie
Przykład użycia funkcji „For Loop” jest następujący:
Let’s see implementation of For Loop Dim val For val = 1 to 4 Msgbox “Hello All. I am Number:” & val & “
” Next
Wyjście z tego jest:
Witam wszystkich. Jestem numerem: 1
Witam wszystkich. Jestem numerem: 2
Witam wszystkich. Jestem numerem: 3
Witam wszystkich. Jestem numerem: 4
Przyjrzyjmy się działaniu kodu:
- „For Loop” zaczyna się od wartości licznika (którą definiujemy pod nazwą zmiennej „var”) wynoszącej 1 i powtórzy się 4 razy, ponieważ licznik ma wartość od 1 do 4.
- Instrukcja wewnątrz pętli jest wykonywana w sąsiedztwie wartości zmiennej.
- Licznik zostanie zwiększony o 1 za pomocą słowa kluczowego „Next”.
- Ponownie ten sam proces będzie kontynuowany i potrwa to 4 razy, ponieważ zakres wynosi od 1 do 4.
Dla każdej pętli
For Each Loop jest rozszerzeniem For Loop. Jest to używane w przypadku „Tablice” . Jeśli chcesz powtórzyć kod dla każdej wartości indeksu tablicy, możesz użyć „For Each Loop”. Działa to tak samo jak powyżej, ale implementacja jest nieco inna.
Zobaczmy jego użycie na prostym przykładzie:
Let’s see implementation of For Each Loop Dim array(3) array(0) = 10 array(1) = 20 array(2) = 30 array(3) = 40 For Each val in array Msgbox “Hello All. I am Number:” & val & “
” Next
Wyjście z tego jest:
Witam wszystkich. Jestem numerem: 10
Witam wszystkich. Jestem numerem: 20
Witam wszystkich. Jestem numerem: 30
Witam wszystkich. Jestem numerem: 40
Przyjrzyjmy się działaniu kodu:
- Tablicę definiuje nazwa „tablica” z wartościami indeksu z zakresu od 0 do 3.
- „Dla każdej pętli” zacznie się od 0 indeksów tablicy i będzie trwało aż do 3, czyli pętla będzie się powtarzać 4 razy.
- Kod zapisany wewnątrz pętli zostanie wykonany 4 razy ze zmianą wartości zmiennej „val” zgodnie z wartościami indeksu tablicy.
- Kiedy wszystkie wartości indeksu zostaną wykonane, pętla dobiegnie końca, a kursor przejdzie do następnej instrukcji pętli.
For Loop ze słowem kluczowym „Step” i instrukcją „Exit For”
W przypadku „For Loop” licznik jest zwiększany o 1 w przypadku słowa kluczowego „Next”. Ale jeśli chcesz zmienić tę wartość i chcesz samodzielnie określić wartość licznika, możesz to zrobić za pomocą polecenia „ Krok ”Słowo kluczowe. Może to być plik pozytywny lub negatywny wartość w zależności od zapotrzebowania i odpowiednio zwiększy lub zmniejszy wartość licznika.
Zrozummy użycie słowa kluczowego Step na prostym przykładzie:
Let’s see implementation of For Loop with Step keyword Dim val For val = 1 to 4 Step 2 Msgbox “Hello All. I am Number:” & val & “
” Next
Wyjście z tego jest:
Witam wszystkich. Jestem numerem: 1
Witam wszystkich. Jestem numerem: 3
Zobaczmy użycie instrukcji „Exit For”, biorąc odniesienie z powyższego przykładu:
Let’s see usage of For Loop with Step keyword and Exit For Dim val For val = 1 to 4 Step 2 Msgbox “Hello All. I am Number:” & val & “
” If val = 3 Then Exit For End If Next
Wyjście z tego jest:
Witam wszystkich. Jestem numerem: 1
„Wyjdź za” służy do wyjścia z bloku „For Loop” kodu. Jeśli w dowolnym momencie pomiędzy pętlą, z której chcesz wyjść, możesz to zrobić za pomocą instrukcji „Exit For”. W powyższym przykładzie „For Loop” jest przerywane, gdy wartość jest równa 3, a zatem komunikat jest wyświetlany tylko raz.
Przyjrzyjmy się następnemu typowi pętli.
# 2) Wykonaj pętlę
Pętle Do są używane, gdy nie masz pewności co do liczby powtórzenia (inaczej niż w przypadku For Loop), które może mieć miejsce w kodzie na podstawie pewnych warunków.
Istnieją 2 typy pętli Do w języku VBScript.
Oni są:
- Do While Loop
- Zrób do pętli
Omówmy szczegółowo każdy z nich.
Do While Loop
Wykorzystuje to słowa kluczowe „Do” i „While”. Można to dalej podzielić na 2 przypadki w zależności od rozmieszczenia słów kluczowych „Do” i „While”. W pierwszym przypadku Do i While są używane na początku pętli, w innych przypadkach Do jest używane na początku pętli, podczas gdy While jest używane na końcu pętli.
Zobaczmy implementację obu za pomocą kilku prostych przykładów:
Przypadek 1: Do While… .Loop
Let’s see usage of Do While Loop with Exit Do Statement Dim val val = 1 Do While val <= 6 Msgbox “This is value “& val If val = 4 Then Exit Do End If val = val * 2 Loop
Wyjście tego jest :
jak rozwiązać wyjątek indeksu tablicy poza granicami w java
To jest wartość 1
To jest wartość 2
To jest wartość 4
Przyjrzyjmy się działaniu kodu:
- Wartość zmiennej (val) jest deklarowana i definiowana jawnie poza pętlą, inaczej niż w przypadku For Loop, gdzie jest zadeklarowana tylko w instrukcji For Loop.
- Wykonaj while Pętla rozpoczyna się od sprawdzenia warunku, jeśli wartość zmiennej jest mniejsza lub równa 6.
- Komunikat zapisany w pętli jest wyświetlany, gdy warunek zostanie spełniony.
- Jeśli wartość zmiennej jest równa 4, pętla jest przerywana, ponieważ w tym momencie używana jest instrukcja Exit Do, a kursor przesuwa się do następnej instrukcji pętli Do While. Stąd żadne dane wyjściowe nie są tworzone, gdy wartość zmiennej osiągnie wartość 4.
- Licznik jest następnie zwiększany na podstawie przypisanego warunku przyrostu, tj. Val * 2 w odróżnieniu w przypadku „For Loop”, gdzie licznik jest automatycznie zwiększany o 1 za pomocą słowa kluczowego „Next”.
Uwaga :Jeśli wartość zmiennej jest zadeklarowana jako 10, tj. Val = 10 w powyższym przykładzie, to Do While Loop nie można wykonać nawet od razu jako warunek val<=6 can never become true.
Przypadek 2: Zrób…
Jak wspomniałem powyżej, zauważ, że funkcja Do While może nie być w stanie wykonać nawet od razu, gdy warunek w ogóle nie jest spełniony. Zrób… .While rozwiązuje ten problem iw tym przypadku nawet jeśli warunek nie jest spełniony, ale przynajmniej jeden raz można wykonać pętlę.
Zrozummy tę koncepcję, biorąc odniesienie z powyższego przykładu:
Let’s see usage of Do….While Loop Dim val val = 10 Do Msgbox “This is value “& val val = val * 2 Loop While val <= 6
Wyjście tego jest :
To jest wartość 10
Przyjrzyjmy się działaniu kodu:
- Wartość zmiennej (val) jest deklarowana i definiowana jawnie poza pętlą, czyli val = 10.
- Pętla Do uruchamia się bez sprawdzania warunku (wartość zmiennej jest mniejsza lub równa 6), a wiadomość zapisana wewnątrz pętli zostanie wykonana, tj. Pętla zostanie wykonana co najmniej raz.
- Licznik jest następnie zwiększany na podstawie przypisanego warunku przyrostu, tj. Val * 2, czyli 10 * 2 = 20.
- Na koniec sprawdzany jest warunek na końcu pętli, który zakończy się niepowodzeniem jako val = 10, czyli nie mniej niż 6. W związku z tym pętla Do While Loop zostanie tutaj zakończona.
Zrób do pętli
Działa to tak samo, jak pętle „Do While”, ale z tą różnicą, że Do While pętla początkowo sprawdza warunek i czy tak jest prawdziwe dopiero potem instrukcje są wykonywane, aw przypadku Rób dopóki , pętla będzie wykonywana, aż warunek stanie się fałszywy . Jest to używane, gdy nie jesteś pewien, ile razy pętla może zostać wykonana.
Pętla Do Until jest również podzielona na 2 przypadki, tak jak w przypadku Do While.
Przyjrzyjmy się ich zastosowaniu za pomocą prostych przykładów:
Przypadek 1: Do aż… .Loop
Let’s see usage of Do Until Loop Dim val val = 1 Do Until val = 6 Msgbox “This is value “& val val = val + 1 Loop
Wyjście tego jest :
To jest wartość 1
To jest wartość 2
To jest wartość 3
To jest wartość 4
To jest wartość 5
Przyjrzyjmy się działaniu kodu:
- Wartość zmiennej (val) jest deklarowana i definiowana jawnie poza pętlą, czyli val = 1.
- Pętla „Do Until” rozpoczyna się od sprawdzenia warunku, że wartość zmiennej nie powinna być równa 6.
- Komunikat zapisany wewnątrz pętli jest wyświetlany, gdy warunek jest spełniony.
- Licznik jest następnie zwiększany na podstawie przypisanego warunku przyrostu, tj. W tym przypadku zwiększa się o 1, tj. Val = val + 1
- Pętla będzie działać, aż val = 5, ponieważ gdy val osiągnie wartość 6, warunek stanie się fałszywy i pętla dobiegnie końca.
Uwaga :Jeśli wartość zmiennej jest zadeklarowana jako 6 (val = 6) w powyższym przykładzie, wtedy pętla „Do Until” nie może zostać wykonana nawet od razu, ponieważ gdy val = 6, warunek staje się fałszywy i pętla nie może być w ogóle wykonana.
Przypadek 2: Zrób… .Pętnij do
Jak wspomniano powyżej, pętla „Do Until” może nie być w stanie wykonać nawet od razu, gdy warunek w ogóle nie jest spełniony; Zrób… .Do rozwiązania tego problemu, a przynajmniej w tym przypadku, nawet jeśli warunek nie jest spełniony jeden raz można wykonać pętlę.
Zrozummy tę koncepcję, biorąc odniesienie z powyższego przykładu:
Let’s see usage of Do….Until Loop Dim val val = 5 Do Msgbox “This is value “& val val = val + 1 Loop Until val = 6
Wyjście tego jest :
To jest wartość 5
Przyjrzyjmy się działaniu kodu:
- Wartość zmiennej (val) jest deklarowana i definiowana jawnie poza pętlą, czyli val = 6.
- Pętla „Do” rozpoczyna się bez sprawdzania warunku, jeśli wartość zmiennej jest mniejsza niż 6, a komunikat zapisany w pętli zostanie wykonany, tj. Pętla zostanie wykonana co najmniej raz.
- Licznik jest następnie zwiększany na podstawie przypisanego warunku przyrostu, tj. Val + 1, czyli 6 + 1 = 7.
- Ostatecznie warunek jest sprawdzany na końcu pętli, co zakończy się niepowodzeniem, ponieważ val jest równa 6, a zatem pętla „Do Until” zostanie zakończona.
# 3) While Loop
Jest to jednak to samo, co pętla „Do While”, którą omówiliśmy przed chwilą, ale ponieważ dobrze jest wiedzieć o wszystkich typach pętli, przyjrzyjmy się też temu. Jest to również używane, gdy nie masz pewności co do liczby powtórzenia w pętli. To sprawdza stan przed wejściem do pętli.
Zrozummy tę pętlę za pomocą prostego przykładu:
Let’s see usage of While Loop Dim val val = 1 While val <= 6 Msgbox “This is value “& val val = val * 2 Wend
Wyjście tego jest :
To jest wartość 1
To jest wartość 2
To jest wartość 4
Przyjrzyjmy się działaniu kodu:
- Wartość zmiennej (val) jest deklarowana i definiowana jawnie poza pętlą, czyli val = 1.
- Pętla „While” rozpoczyna się od sprawdzenia warunku, jeśli wartość zmiennej jest mniejsza lub równa 6
- Wiadomość zapisana wewnątrz pętli jest wyświetlana, gdy warunek jest spełniony
- Licznik jest następnie zwiększany na podstawie przypisanego warunku przyrostu, tj. Wartość val zostanie pomnożona przez 2 za każdym razem, gdy warunek zostanie spełniony.
- Gdy wartość zmiennej przekroczy 6, pętla dobiegnie końca i zostaną wykonane instrukcje zapisane po słowie kluczowym „Wend”.
Wniosek
Mam nadzieję, że dzięki temu samouczkowi zdobyłeś dobrą wiedzę na temat znaczenia i różnych typów pętli w VBScript. To z kolei pomoże ci w kontynuowaniu kolejnych samouczków z serii.
Następny samouczek nr 6 : Omówimy „Procedury i funkcje” w języku VBScript w następnym samouczku.
Bądź na bieżąco i podziel się swoimi doświadczeniami z pracy z Loops i daj nam znać, co myślisz o tym samouczku.
rekomendowane lektury
- Typy pętli powłoki Unix: Do While Loop, For Loop, Until Loop w Uniksie
- Python Loops - For, While, zagnieżdżone pętle z przykładami
- Konstrukcje pętli w C ++ z przykładami
- Dodawanie instrukcji warunkowych i instrukcji pętli w widoku słów kluczowych - samouczek QTP nr 4
- Obsługa błędów VBScript: VBScript przy błędzie, przy błędzie GoTo 0, przy błędzie Wznów dalej
- Instrukcje warunkowe VBScript: VBScript If, ElseIf, Select Case
- Samouczki VBScript: Naucz się języka VBScript od podstaw (ponad 15 szczegółowych samouczków)
- Kurs QTP nr 10 - Pisanie pętli i instrukcji warunkowych - podstawy skryptu VB, część 2