این دستورات برای انجام دادن کارهای متفائت در شرایط  پیش امده مورد نظر بکار می روند

در VBScript ما چهار نوع دستور تعیین وضعیت داریم :

If statement : وقتی شرایط مورد نظر ما true باشد دستورات ان اجرا می شود

If...Then...Else statement : یکی از دو حالت if یا else را اجرا می کند

If...Then...ElseIf statement :می توان شرایط بسیار متنوع تری را بررسی کرد

Select Case statement : یکی از چند  حالت مورد بررسی را اجرا می کند
 
 

If...Then...Else

 

از این دستور در موارد زیر استفاده کنید :

  • اجرا کردن دستوراتی در زمانی که شرط مورد نظر شما true باشد
  • اجرای یکی از دو بلاک دستور

 

 

اگر می خواهید در صورت درست بودن شرط فقط یک دستور اجرا شود می توان همان تک دستور را جلوی then روی یک خط نوشت

If i=10 Then alert("Hello")

 

 

در این دستور هیچ Else ای وجود ندارد . بلکه شما فقط مشخص می کنید در صورت درست بودن شرایط مورد نظر تان یک دستور اجرا شود  و در این مثال اگر i=10

 

اگر شما در نظر دارید در صورت درست بودن شرایط مورد نظرتان بیشتر از یک دستور اجرا شود شما باید هر دستور را در خط جداگانه ای بنویسید . و بعد از اخرین دستور End If بنویسید

 

If i=10 Then
alert("Hello")
i = i+1
End If

 

 

در این دستور هم هیچ Else ای وجود ندارد . بلکه شما فقط مشخص کرده اید در صورت درست بودن شرایط مورد نظرتان بیش از یک دستور اجرا شود .

 

اگر می خواهید در صورت درست بودن شرایط مورد نظرتان دستوراتی اجرا شود و در صورت نادرست بودن شرایط مورد نظرتان دستورات دیگری اجرا شود  شما باید دستور else را هم اضافه کنید

 

 

<script type="text/vbscript">


i=hour(time)


     If i < 10 Then
                 document.write("Good morning!")
    Else
                 document.write("Have a nice day!")
    End If


</script>

 
 مشاهده و اجرای برنامه کامل
 
  در مثال بالا ، در صورت درست  بودن شرط if یعنی اگر مقداردرون i کمتر از 10 بود بلاک دستور بعد از if و قبل از else اجرا می شود و در صورت نارست بودن  این شرط یعنی اگر مقدار i کمتر از 10 نبود دستورات بعد از else و قبل از end if اجرا می شود
 
If...Then...ElseIf
  برای بررسی شرطهای بسیار متنوع تر از این دستور می توان استفاده کرد

 

<script type="text/vbscript">


i=hour(time)


If i = 10 Then
             document.write("Just started...!")
ElseIf  i = 11 Then
             document.write("Hungry!")
ElseIf i = 12 Then
             document.write("Ah, lunch-time!")
ElseIf i = 16 Then
             document.write("Time to go home!")
Else
             document.write("Unknown")
End If


</script>

 
 مشاهده و اجرای برنامه کامل
 
 
Select Case
  از این دستور هم برای اجرای فقط یک بلاک کد از بین چندین بلاک کد استفاده می شود

 

<script type="text/vbscript">


d=weekday(date)


Select Case d
  Case 1
    document.write("Sleepy Sunday")
  Case 2
    document.write("Monday again!")
  Case 3
    document.write("Just Tuesday!")
  Case 4
    document.write("Wednesday!")
  Case 5
    document.write("Thursday...")
  Case 6
    document.write("Finally Friday!")
  Case else
    document.write("Super Saturday!!!!")
End Select


</script>

 مشاهده و اجرای برنامه کامل
 
  روش کار :  در ابتدا جلوی دستور select case ما یک عبارت داریم ( در بیشتر موارد نام یک متغیر است ) این عبارت را فقط یک بار و انهم جلوی select case  می نویسیم . سپس مقادیر متنوعی که این عبارت ممکن است بگیرد را جلوی هر case می نویسیم .  مقدار عبارت برابر مقدار هر case که بود دستورات همان case اجرا می شود .

 

 weekday(date)

این تابع یکی از توابع مخصوص vb ( ویژوال بیسیک )  است که به مشخص می کند تاریخ درون پرانتز کدام روز هفته می شود