VBScript feltételes utasítás: IF…Else és ElseIF (példa)

⚡ Okos összefoglaló

A VBScript feltételes utasítások lehetővé teszik a programok számára, hogy egy feltétel alapján döntéseket hozzanak és különböző kódokat futtassanak. A VBScript négyféle formát kínál: If…Then, If…Then…Else, If…Then…ElseIf, és Select Case, amely egyező érték alapján választ ki egy blokkot a sok közül.

  • 🔀 Ha…Akkor: Csak akkor futtat egy kódblokkot, ha egy feltétel igaz, és End If utasítással kell végződnie.
  • ↔️ Ha…Akkor…Különben: Két blokk közül választ, az egyiket akkor futtatja le, ha a feltétel igaz, a másikat pedig egyébként.
  • 🪜 Ha…Akkor…KülönbenHa: Több feltételt tesztel sorrendben, és lefuttatja az első egyező blokkot.
  • 🎛️ Válasszon esetet: Egy változót hasonlít össze sok értékkel, ami a hosszú ElseIf láncok tisztább alternatívája.
  • ⌨️ BemenetBox Demo: Az életkor példa beolvassa a felhasználói bevitelt, és a megadott érték alapján választ ki egy üzenetet.
  • ⚠️ Végjelzők: Az If blokkokhoz End If és Select Case-hez End Select szükséges, különben a kód nem eredményez kimenetet.

VBScript feltételes utasítás

Mi az a feltételes nyilatkozat?

A programozás során bizonyos döntéseket kell hoznia, és ezek alapján különböző műveleteket kell végrehajtania.

Ilyen helyzetekben feltételes állításokat fog használni.

A VBScriptben négyféle feltételes utasítás létezik: If…Then, If…Then…Else, If…Then…ElseIf és Select Case.

VBScript If Then nyilatkozat

A VBScript If-Then utasítást használja, ha valamilyen kódot szeretne végrehajtani, ha egy adott feltétel igaz.

Például az „Üdvözöljük” üzenetet szeretné kiadni, amikor a loggedIn változó értéke igaz.

Ebben az esetben az If…Then utasítást fogja használni a VBS-ben.

If loggedIn = true Then
document.write("Welcome")
End If

MEGJEGYZÉS: Ha elfelejti befejezni a kódot az End If-re, akkor nem kap semmilyen kimenetet.

VBScript If Else nyilatkozat

A VBScript If…Then…Else utasítást akkor fogod használni, ha két kódblokk egyikét szeretnéd kiválasztani végrehajtásra.

Például, a „Hi, Good Morning” üzenetet szeretné kiadni, ha egy „time” nevű változó értéke kisebb vagy egyenlő tíznél, ellenkező esetben pedig a „Szia, jó napot” üzenetet kívánja kiadni.

Ilyen esetben az If…Then…Else utasítást kell használni.

If time <= 10 Then
document.write("Hi, Good Morning")
Else
document.write("Hi, Good Day")
End If

VBScript If Elseif utasítás

Az If…Then…ElseIf utasítást akkor fogod használni, ha sok kódblokk közül kell kiválasztanod egyet végrehajtásra.

Például, Ha a hét napja alapján szeretnéd módosítani a kimenetet, akkor az If…Then…ElseIf utasítást kell használnod.

If today="Sunday" Then
document.write("Today is Sunday")
ElseIf today="Monday" Then
document.write("Today is Monday")
ElseIf today="Tuesday" Then
document.write("Today is Tuesday")
ElseIf today="Wednesday" Then
document.write("Today is Wednesday")
ElseIf today="Thursday" Then
document.write("Today is Thursday")
ElseIf today="Friday" Then
document.write("Today is Friday")
ElseIf today="Saturday" Then
document.write("Today is Saturday")
End If

VBScript SELECT esetnyilatkozat

Az If…Then…ElseIf utasításhoz hasonlóan a VBScript Case utasítás is használható, ha sok kódblokk közül kell kiválasztani egyet a végrehajtáshoz.

Ugyanez a fenti kód így írható a Select Case utasítással.

Select Case today
Case "Sunday"
document.write("Today is Sunday")
Case "Monday"
document.write("Today is Monday")
Case "Tuesday"
document.write("Today is Tuesday")
Case "Wednesday"
document.write("Today is Wednesday")
Case "Thursday"
document.write("Today is Thursday")
Case "Friday"
document.write("Today is Friday")
Case "Saturday"
document.write("Today is Saturday")
End Select

Próbálja ki az alábbi kódot, hogy világosabbá tegye a fogalmat.

If Else If Példa

Step 1) Másolja be a kódot a szerkesztőbe

<html>
<head>
<script type="text/vbscript">
Dim age
age = InputBox("Enter your age")
If age<18 Then
document.write("You are too young.")
ElseIf age<45 Then
document.write("You are still young.")
ElseIf age<70 Then
document.write("You are getting older.")
Else
document.write("You are too old.")
End If

</script>

</head>
<body>
</body>
</html>

Step 2) Mentse el a fájlt condition.html néven a kívánt helyre.

Most nyissa meg a fájlt az Internet Explorerben, és a képernyő így fog kinézni egy mezővel, amely az életkorát kéri.

VBScript SELECT esetnyilatkozat

Írjon be egy számértéket, mondjuk 22-t. Ilyen üzenetet fog kapni.

VBScript SELECT esetnyilatkozat

Adjon meg különböző értékeket, és figyelje meg a kimenetet.

GYIK

Használd a Select Case (Eset kiválasztása) függvényt, ha egy változót sok fix értékkel hasonlítasz össze; ez tisztább, mint egy hosszú ElseIf lánc. Használd az ElseIf függvényt, ha a feltételek különböző változókat vagy tartományokat tesztelnek.

Igen. Egy egysoros If blokk, például az If x=1 Then y=2, nem igényel End If blokkot. Az End If blokk csak akkor szükséges, ha az If blokk több soron átível, különálló utasításokkal.

Nem. A VBScript nem tartalmaz ternáris (?:) operátort és beépített IIf függvényt. Használjon egy teljes If…Then…Else blokkot, vagy írjon egy kis segédfüggvényt egy feltételen alapuló érték kiválasztásához.

Igen. A mesterséges intelligencia képes egy ismétlődő If…ElseIf létrát egy azzal egyenértékű Select Case blokkká alakítani, javítva az olvashatóságot. Emellett képes megjelölni azokat a feltételeket is, amelyek nem konvertálhatók, például a tartományellenőrzéseket.

A mesterséges intelligencia képes észlelni a hiányzó End If vagy End Select függvényeket, a hibás összehasonlító operátorokat és az elérhetetlen ágakat. Elmagyarázza, hogy egy feltétel miért nem fut le soha, és javaslatot tesz a javításra, csökkentve a csendes, kimenet nélküli hibákat.

Foglald össze ezt a bejegyzést a következőképpen: