ASP教程ASP腳本循環語句

如果有人告訴你學習ASP不需要任何編程知識,那麼他錯了;如果我告訴你學習ASP必須掌握一門編程語言,那麼我錯了。ASP動態服務器頁面環境的特點就在於它是通過一種或幾種腳本語言而寫成的,腳本語言可以看作是編程語言的簡化版,它易於學習和掌握,這給廣大動態網站的設計者們提供了相當大的便利。可以這麼說:腳本語言運用的得當與否直接關係到ASP應用程序的優與劣。繼上一篇我們學習了腳本語言VBScript的函數和條件語句後,今天我們繼續來看看VBScript中的循環語句。

ASP教程ASP腳本循環語句

循環語句的作用就是重複執行程序代碼,循環可分爲三類:一類在條件變爲“假”之前重複執行語句,一類在條件變爲“真”之前重複執行語句,另一類按照指定的次數重複執行語句。在VBScript中可使用下列循環語句:

:當(或直到)條件爲“真”時循環。

:當條件爲“真”時循環。

:指定循環次數,使用計數器重複運行語句。

:對於集合中的每項或數組中的每個元素,重複執行一組語句。

我們先來看看,它是可以多次(次數不定)運行語句塊。當條件爲“真”時或條件變爲“真”之前,重複執行語句塊。請看下例:

請將今年到本月爲止的每個月份的銷售結算記錄填寫在本頁之上。

<%

counter=1

thismonth=month(now())

Dowhilecounter<thismonth+1

e""&counter&"月份:"

e"______________________________"&"

"

Ifcounter>13then

exitdo

endif

counter=counter+1

Loop

%>

這段ASP程序運用循環語句製作了一張銷售結算記錄表,將以上代碼剪貼至記事簿保存爲,並在瀏覽器中以HTTP方式進行瀏覽,根據當前的月份的不同。

我們來分析一下此段程序,我們的目的是要根據當前的月份打印一張表格,首先我們建立一個計數器“count”並將其值設爲1,然後我們用函數month()和now()得到當前的月份,最後建立循環,當count的值小於當前月份的值加1的時候,即顯示月份值及一條橫線並將count的值加1,循環語句重複執行直到以上條件爲假時退出循環。其中如果count大於13則用exitdo立即退出循環。

DoLoop語句還可以使用以下語法:

Do

[statements][ExitDo]

[statements]Loop[{WhileUntil}condition]

語句是爲那些熟悉其用法的用戶提供的。但是由於缺少靈活性,所以建議最好使用語句。下面我們來看看ForNext語句。語句用於將語句塊運行指定的次數,在循環中使用計數器變量,該變量的值隨每一次循環增加或減少。

下面的示例將過程MyProc重複執行50次。For語句指定計數器變量x及其起始值與終止值。Next語句使計數器變量每次加1。

SubDoMyProc50Times()

Dimx

Forx=1To50

MyProc

Next

EndSub

關鍵字Step用於指定計數器變量每次增加或減少的值。在下面的示例中,計數器變量j每次加2。循環結束後,total的值爲2、4、6、8和10的總和。SubTwosTotal()

Dimj,total

Forj=2To10Step2

total=total+j

Next

MsgBox"總和爲"&total&"。"

EndSub

要使計數器變量遞減,可將Step設爲負值。此時計數器變量的終止值必須小於起始值。在下面的示例中,計數器變量myNum每次減2。循環結束後,total的值爲16、14、12、10、8、6、4和2的總和。SubNewTotal()

DimmyNum,total

FormyNum=16To2Step-2

total=total+myNum

Next

MsgBox"總和爲"&total&"。"

EndSub

ExitFor語句用於在計數器達到其終止值之前退出語句。因爲通常只是在某些特殊情況下(例如在發生錯誤時)要退出循環,所以可以在語句的True語句塊中使用ExitFor語句。如果條件爲False,循環將照常運行。

最後,讓我們來看看語句,循環與循環類似。不是將語句運行指定的次數,而是對於數組中的每個元素或對象集合中的每一項重複一組語句。這在不知道集合中元素的數目時非常有用。它的語法如下:ForEachelementIngroup

[statements]

[ExitFor]

[statements]Next[element]

如果group中有至少一個元素,就會進入ForEach塊執行。一旦進入循環,便首先對group中第一個元素執行循環中的所有語句。只要group中還有其他的元素,就會對每個元素執行循環中的語句。當group中沒有其他元素時退出循環,然後從Next語句之後的語句繼續執行。

至此,我們已經完成了對腳本語言VBScript所有的基本知識的'學習,但是僅憑閱讀現有的這幾篇文章你是無法熟練運用VBScript的,你必須通過不斷的實踐來提高自己的等級。當然,如果你熟悉C,你也可以選擇javascript來作爲ASP應用程序的腳本語言。不知大家有沒有發現ASP程序的調試比較困難,因爲沒有什麼現成的工具,在這裏我向大家簡要介紹一下MicrosoftScriptDebugger,我們可以運用它來進行一定量的程序調試工作。

IIS4.0所包括的MicrosoftScriptDebugger(Script偵錯工具),提供腳本程序的偵錯功能。您可以使用MicrosoftScript偵錯工具來進行對使用VBScript、JScript編寫的腳本程序,以及Javaapplets、beans和ActiveX組件的偵錯工作。

有的腳本程序在用戶端瀏覽器執行,有的腳本程序(<%…%>中的部份)在服務器端執行。MicrosoftScriptDebugger,可以偵錯用戶端執行的腳本程序以及服務器端執行腳本程序。在用戶端瀏覽器執行的腳本程序是在用戶端的瀏覽器當中執行,包括在標準HTML代碼中的VBScript、Jscript部份。在瀏覽器載入此HTML代碼或譬如按下按鈕觸發事件時,將執行此包括腳本程序的HTML代碼。用戶端瀏覽器執行的腳本程序,主要用於對HTML表單輸入的基本檢查等功能。

在服務器端執行的腳本程序是在IIS服務器端執行,包括在程序中。先在IIS服務器上執行,執行結果產生標準的HTML代碼,再傳送到用戶端瀏覽器。服務器端執行的腳本程序,主要用於多個網頁之間的連結,HTML表單輸入的處理,以及存取服務器上數據庫的資料等。

  MicrosoftScriptDebugger提供以下的除錯功能:

1、設定中斷點

2、逐步追蹤腳本程序。

3、設定書籤。

4、檢視呼叫堆疊。

5、檢視和更改變數值。

6、執行腳本指令。