VBScript Koşullu İfade: IF…Else ve ElseIF (Örnek)

⚡ Akıllı Özet

VBScript koşullu ifadeleri, bir programın bir koşula bağlı olarak kararlar almasını ve farklı kodlar çalıştırmasını sağlar. VBScript dört biçim sunar: If…Then, If…Then…Else, If…Then…ElseIf ve eşleşen bir değere göre birçok bloktan birini seçen Select Case.

  • 🔀 Eğer…O zaman: Bu kod bloğu yalnızca bir koşul doğru olduğunda çalışır ve End If ile sona ermelidir.
  • ↔️ Eğer…O zaman…Yoksa: İki bloktan birini seçer; koşul doğru olduğunda birini, aksi durumda diğerini çalıştırır.
  • 🪜 Eğer…O zaman…Aksi halde: Birkaç koşulu sırayla test eder ve eşleşen ilk bloğu çalıştırır.
  • 🎛️ Büyük/küçük harf seçimi: Bir değişkeni birçok değerle karşılaştırır; uzun ElseIf zincirlerine göre daha temiz bir alternatiftir.
  • ⌨️ GirişBox Demo: Yaş örneği, kullanıcıdan girdi alır ve girilen değere göre bir mesaj seçer.
  • ⚠️ Bitiş İşaretleyicileri: Blokların End If ve Select Case ifadelerine ihtiyacı varsa veya kod hiçbir çıktı üretmiyorsa, bu durum düzeltilmelidir.

VBScript Koşullu İfade

Koşullu İfade Nedir?

Programlama yaparken belirli kararlar vermeniz ve bu kararlara göre farklı eylemler gerçekleştirmeniz gerekecektir.

Bu gibi durumlarda koşullu ifadeler kullanacaksınız.

VBScript'te dört tür koşullu ifade vardır: If…Then, If…Then…Else, If…Then…ElseIf ve Select Case.

VBScript If Then İfadesi

Belirli bir koşul doğru olduğunda bazı kodları yürütmek istiyorsanız VBScript If-Then ifadesini kullanacaksınız.

Örneğin, LogIn değişkeninin değeri doğru olduğunda “Hoş Geldiniz” mesajının çıktısını almak istiyorsunuz.

Bu durumda VBS'de If…Then ifadesini kullanacaksınız.

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

NOT: Kodu End If ile bitirmeyi unutursanız herhangi bir çıktı alamazsınız.

VBScript If Else İfadesi

İki kod bloğundan birini çalıştırmak istediğinizde VBScript If…Then…Else ifadesini kullanacaksınız.

Örneğin, "time" adlı değişkenin değeri 10 veya daha az olduğunda "Merhaba, Günaydın" mesajını, aksi takdirde "Merhaba, İyi Günler" mesajını çıktı olarak vermek istiyorsunuz.

Bu durumda, If…Then…Else ifadesini kullanacaksınız.

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

VBScript If Elseif Deyimi

Birden fazla kod bloğundan birini seçip çalıştırmanız gerektiğinde If…Then…ElseIf ifadesini kullanacaksınız.

Örneğin, Eğer çıktıyı haftanın gününe göre değiştirmek istiyorsanız, If…Then…ElseIf ifadesini kullanmanız gerekir.

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 Vaka Bildirimi

If…Then…ElseIf ifadesine benzer şekilde, VBScript Case ifadesi de yürütülecek birden fazla kod bloğundan birini seçmeniz gerektiğinde kullanılabilir.

Yukarıdaki kodun aynısı Select Case deyimi kullanılarak bu şekilde yazılabilir.

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

Konsepti daha net hale getirmek için aşağıda verilen kodu deneyin.

Aksi takdirde If Örnek

) 1 Adım Kodu editörünüze kopyalayın

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

) 2 Adım Dosyayı tercih ettiğiniz konumacondition.html olarak kaydedin.

Şimdi dosyayı Internet Explorer'da açtığınızda ekranınız aşağıdaki gibi görünecek ve yaşınızı girmenizi isteyen bir kutucuk göreceksiniz.

VBScript SELECT Vaka Bildirimi

Sayısal bir değer girin, örneğin 22. Bunun gibi bir mesaj alacaksınız.

VBScript SELECT Vaka Bildirimi

Farklı değerler girin ve çıktıyı gözlemleyin.

SSS

Bir değişkeni birçok sabit değerle karşılaştırırken Select Case kullanın; uzun bir ElseIf zincirinden daha temizdir. Koşullar farklı değişkenleri veya aralıkları test ederken ElseIf kullanın.

Evet. If x=1 Then y=2 gibi tek satırlık bir If bloğu için End If gerekmez. End If yalnızca If bloğunun ayrı ifadeler içeren birden fazla satıra yayılması durumunda gereklidir.

Hayır. VBScript'te üçlü operatör (?:) veya yerleşik IIf fonksiyonu yoktur. Bir koşula bağlı olarak değer seçmek için tam bir If…Then…Else bloğu kullanın veya küçük bir yardımcı fonksiyon yazın.

Evet. Yapay zeka, tekrarlayan If…ElseIf yapısını eşdeğer bir Select Case bloğuna dönüştürerek okunabilirliği artırabilir. Ayrıca, aralık kontrolleri gibi dönüştürülemeyen koşulları da işaretleyebilir.

Yapay zeka, eksik bir End If veya End Select ifadesini, yanlış karşılaştırma operatörlerini ve ulaşılamayan dalları tespit edebilir. Bir koşulun neden hiç çalışmadığını açıklar ve düzeltme önerisinde bulunarak, sessiz ve çıktı vermeyen hataları azaltır.

Bu yazıyı şu şekilde özetleyin: