萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 網路程式設計 >> ASP 程式設計

ASP Array() 函數建立靜態陣列:語法、範例與動態陣列對比

ASP VBScript 陣列建立完整指南:Array()、Dim/ReDim、多維陣列

VBScript 提供 Array() 函數快速建立**靜態一維陣列**,若需動態調整大小或多維陣列,必須使用 Dim + ReDim。本文整理語法、輸出範例、動態陣列擴充技巧與多維陣列宣告。

Array() 靜態一維陣列

<%
myArray = Array("A", "B", "C", "D")
Response.Write myArray(0) & " " ' A
Response.Write myArray(1) & " " ' B
Response.Write myArray(2) & " " ' C
Response.Write myArray(3)       ' D
%>
<%
myArray = Array(111, 222, 333, 444, 555)
For i = 0 To UBound(myArray)
    Response.Write myArray(i) & " "
Next
' 輸出: 111 222 333 444 555
%>

動態陣列:Dim + ReDim

<%
Dim SomeArray()
ReDim SomeArray(22)   ' 23 個元素 (0-22)
' ... 程式邏輯 ...
ReDim SomeArray(500)  ' 擴充至 501 個元素,**資料會遺失**
' 保留資料請用 ReDim Preserve
ReDim Preserve SomeArray(500)
%>

多維陣列宣告

<%
' 固定大小三維陣列 (23 x 15 x 201)
Dim ThreeDimArray(22, 14, 200)
ThreeDimArray(0,0,0) = "Test"
%>

動態多維陣列需先 Dim Arr() 再 ReDim Arr(10, 20, 30),但 ReDim Preserve **只能修改最後一維** 大小。

常見陣列操作速查

操作語法備註
取得維度數UBound(arr, 1) (第一維上界)維度索引 1-based
陣列長度UBound(arr) - LBound(arr) + 1通常 LBound=0
清空陣列Erase arr釋放記憶體,固定大小陣列保留結構
檢查是否為陣列IsArray(arr)回傳 Boolean
陣列轉字串Join(arr, ",")一維陣列專用
字串轉陣列Split(str, ",")回傳一維陣列

最佳實務

  • 已知元素個數 → Array() 最簡潔。
  • 需動態增減 → Dim arr() : ReDim Preserve arr(newUpper)。
  • 大量資料處理 → 考慮 Scripting.Dictionary (雜湊表) 效能優於陣列搜尋。
  • 跨函式傳遞陣列 → 使用 ByRef 避免複製開銷。
copyright © 萬盛學電腦網 all rights reserved