當前位置:才華齋>設計>網頁設計>

關於VBScript教程 第四課VBScript變數

網頁設計 閱讀(4.72K)

什麼是變數?

關於VBScript教程 第四課VBScript變數

變數是一種使用方便的佔位符,用於引用計算機記憶體地址,該地址可以儲存 Script 執行時可更改的程式資訊。例如,可以建立一個名為 ClickCount 的變數來儲存使用者單擊 Web 頁面上某個物件的次數。使用變數並不需要了解變數在計算機記憶體中的地址,只要通過變數名引用變數就可以檢視或更改變數的值。在 VBScript 中只有一個基本資料型別,即 Variant,因此所有變數的資料型別都是 Variant。

宣告變數

宣告變數的一種方式是使用 Dim 語句、Public 語句和 Private 語句在 Script 中顯式宣告變數。例如:

Dim DegreesFahrenheit

宣告多個變數時,使用逗號分隔變數。例如:

Dim Top, Bottom, Left, Right

另一種方式是通過直接在 Script 中使用變數名這一簡單方式隱式宣告變數。這通常不是一個好習慣,因為這樣有時會由於變數名被拼錯而導致在執行 Script 時出現意外的結果。因此,最好使用 Option Explicit 語句顯式宣告所有變數,並將其作為 Script 的第一條語句。

 命名規則

變數命名必須遵循 VBScript 的標準命名規則。變數命名必須遵循:

·第一個字元必須是字母。

·不能包含嵌入的句點。

·長度不能超過 255 個字元。

·在被宣告的作用域內必須唯一。

 變數的作用域與存活期

變數的作用域由宣告它的位置決定。如果在過程中宣告變數,則只有該過程中的程式碼可以訪問或更改變數值,此時變數具有區域性作用域並被稱為過程級變數。如果在過程之外宣告變數,則該變數可以被 Script 中所有過程所識別,稱為 Script 級變數,具有 Script 級作用域。

變數存在的`時間稱為存活期。Script 級變數的存活期從被宣告的一刻起,直到 Script 執行結束。對於過程級變數,其存活期僅是該過程執行的時間,該過程結束後,變數隨之消失。在執行過程時,區域性變數是理想的臨時儲存空間。可以在不同過程中使用同名的區域性變數,這是因為每個區域性變數只被宣告它的過程識別。

 給變數賦值

建立如下形式的表示式給變數賦值:變數在表示式左邊,要賦的值在表示式右邊。例如:

B = 200

標量變數和陣列變數

多數情況下,只需為宣告的變數賦一個值。只包含一個值的變數被稱為標量變數。有時候,將多個相關值賦給一個變數更為方便,因此可以建立包含一系列值的變數,稱為陣列變數。陣列變數和標量變數是以相同的方式宣告的,唯一的區別是宣告陣列變數時變數名後面帶有括號 ( )。下例聲明瞭一個包含 11 個元素的一維陣列:

 Dim A(10)

雖然括號中顯示的數字是 10,但由於在 VBScript 中所有陣列都是基於 0 的,所以這個陣列實際上包含 11 個元素。在基於 0 的陣列中,陣列元素的數目總是括號中顯示的數目加 1。這種陣列被稱為固定大小的陣列。

在陣列中使用索引為陣列的每個元素賦值。從 0 到 10,將資料賦給陣列的元素,如下所示:

A(0) = 256

A(1) = 324

A(2) = 100

. . .

A(10) = 55

與此類似,使用索引可以檢索到所需的陣列元素的資料。例如:

. . .

SomeVariable = A(8)

. . .

陣列並不僅限於一維。陣列的維數最大可以為 60(儘管大多數人不能理解超過 3 或 4 的維數)。宣告多維陣列時用逗號分隔括號中每個表示陣列大小的數字。在下例中,MyTable 變數是一個有 6 行和 11 列的二維陣列:

Dim MyTable(5, 10)

在二維陣列中,括號中第一個數字表示行的數目,第二個數字表示列的數目。

也可以宣告動態陣列,即在執行 Script 時大小發生變化的陣列。對陣列的最初宣告使用 Dim 語句或 ReDim 語句。但是對於動態陣列,括號中不包含任何數字。例如:

Dim MyArray()

ReDim AnotherArray()

要使用動態陣列,必須隨後使用 ReDim 確定維數和每一維的大小。在下例中,ReDim 將動態陣列的初始大小設定為 25,而後面的 ReDim 語句將陣列的大小重新調整為 30,同時使用 Preserve 關鍵字在重新調整大小時保留陣列的內容。

ReDim MyArray(25)

. . .

ReDim Preserve MyArray(30)

重新調整動態陣列大小的次數是沒有任何限制的,但是應注意:將陣列的大小調小時,將會丟失被刪除元素的資料。