在本文上兩篇中,我們學(xué)習(xí)了腳本語(yǔ)言 VBScript 的變量、函數(shù)、過程和條件語(yǔ)句,本篇將繼續(xù)給大家介紹 VBScipt 的循環(huán)語(yǔ)句,并對(duì)腳本語(yǔ)言在 ASP 中的應(yīng)用加以總結(jié)。
如果有人告訴你學(xué)習(xí) ASP 不需要任何編程知識(shí),那么他錯(cuò)了;如果我告訴你學(xué)習(xí) ASP 必須掌握一門編程語(yǔ)言,那么我錯(cuò)了。ASP 動(dòng)態(tài)服務(wù)器頁(yè)面環(huán)境的特點(diǎn)就在于它是通過一種或幾種腳本語(yǔ)言而寫成的,腳本語(yǔ)言可以看作是編程語(yǔ)言的簡(jiǎn)化版,它易于學(xué)習(xí)和掌握,這給廣大動(dòng)態(tài)網(wǎng)站的設(shè)計(jì)者們提供了相當(dāng)大的便利?梢赃@么說(shuō) : 腳本語(yǔ)言運(yùn)用的得當(dāng)與否直接關(guān)系到 ASP 應(yīng)用程序的優(yōu)與劣。繼上一篇我們學(xué)習(xí)了腳本語(yǔ)言 VBScript 的函數(shù)和條件語(yǔ)句后,今天我們繼續(xù)來(lái)看看 VBScript 中的循環(huán)語(yǔ)句。
循環(huán)語(yǔ)句的作用就是重復(fù)執(zhí)行程序代碼,循環(huán)可分為三類:一類在條件變?yōu)椤凹佟敝爸貜?fù)執(zhí)行語(yǔ)句,一類在條件變?yōu)椤罢妗敝爸貜?fù)執(zhí)行語(yǔ)句,另一類按照指定的次數(shù)重復(fù)執(zhí)行語(yǔ)句。在 VBScript 中可使用下列循環(huán)語(yǔ)句:
Do...Loop: 當(dāng)(或直到)條件為“真”時(shí)循環(huán)。
While...Wend: 當(dāng)條件為“真”時(shí)循環(huán)。
For...Next: 指定循環(huán)次數(shù),使用計(jì)數(shù)器重復(fù)運(yùn)行語(yǔ)句。
For Each...Next: 對(duì)于集合中的每項(xiàng)或數(shù)組中的每個(gè)元素,重復(fù)執(zhí)行一組語(yǔ)句。
我們先來(lái)看看 Do...Loop,它是可以多次(次數(shù)不定)運(yùn)行語(yǔ)句塊。當(dāng)條件為“真”時(shí)或條件變?yōu)椤罢妗敝,重?fù)執(zhí)行語(yǔ)句塊。請(qǐng)看下例: < html="">< head="">
< title="">DoLoop.asp< itle="">< body="" bgcolor="#FFFFFF">< ead="">< p=""><> < p="">請(qǐng)將今年到本月為止的每個(gè)月份的銷售結(jié)算記錄填寫在本頁(yè)之上。< p="">
< %=""> counter = 1 thismonth = month(now()) Do while counter < thismonth="" +="" 1=""> response.write " " & counter & " 月份 : " response.write "______________________________" & "< br="">< br="">" If counter >13 then exit do end if counter = counter+1 Loop %> < hr="">< ody="">< tml=""> 這段 ASP 程序運(yùn)用循環(huán)語(yǔ)句制作了一張銷售結(jié)算記錄表,將以上代碼剪貼至記事簿保存為 DoLoop.asp,并在瀏覽器中以 HTTP 方式進(jìn)行瀏覽,根據(jù)當(dāng)前的月份的不同,你將看到如下圖的結(jié)果。
 我們來(lái)分析一下此段程序,我們的目的是要根據(jù)當(dāng)前的月份打印一張表格,首先我們建立一個(gè)計(jì)數(shù)器“count”并將其值設(shè)為 1,然后我們用函數(shù) month() 和 now() 得到當(dāng)前的月份,最后建立循環(huán),當(dāng) count 的值小于當(dāng)前月份的值加 1 的時(shí)候,即顯示月份值及一條橫線并將 count 的值加 1,循環(huán)語(yǔ)句重復(fù)執(zhí)行直到以上條件為假時(shí)退出循環(huán)。其中如果 count 大于 13 則用 exit do 立即退出循環(huán)。
Do Loop 語(yǔ)句還可以使用以下語(yǔ)法:
Do [statements][Exit Do] [statements]Loop [{While | Until} condition] While...Wend 語(yǔ)句是為那些熟悉其用法的用戶提供的。但是由于 While...Wend 缺少靈活性,所以建議最好使用 Do...Loop 語(yǔ)句。下面我們來(lái)看看 For Next 語(yǔ)句。For...Next 語(yǔ)句用于將語(yǔ)句塊運(yùn)行指定的次數(shù),在循環(huán)中使用計(jì)數(shù)器變量,該變量的值隨每一次循環(huán)增加或減少。
下面的示例將過程 MyProc 重復(fù)執(zhí)行 50 次。For 語(yǔ)句指定計(jì)數(shù)器變量 x 及其起始值與終止值。Next 語(yǔ)句使計(jì)數(shù)器變量每次加 1。 Sub DoMyProc50Times()
Dim x For x = 1 To 50 MyProc Next End Sub
關(guān)鍵字 Step 用于指定計(jì)數(shù)器變量每次增加或減少的值。在下面的示例中,計(jì)數(shù)器變量 j 每次加 2。循環(huán)結(jié)束后,total 的值為 2、4、6、8 和 10 的總和。
Sub TwosTotal() Dim j, total For j = 2 To 10 Step 2 total = total + j Next MsgBox " 總和為 " & total & "。" End Sub [1] [2] 下一頁(yè)
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!