定義簡單數組
有兩種方法在asp中定義和初始化數組,讓我們看看每種的例子:
方法一:
MyArray = Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct", "Nov","Dec")
數組大小由初始化元素個數決定。
方法二:
Dim myArray(2) '指定數組大小
myArray(0)="Jan"
myArray(1)="Feb"
數組動態擴展
DIM myArray()
REDIM myArray(20) '將數組大小重新定義為20ReDim Preserve MyArray(i) 'Preserve 保留數組中的原有數據
二維數組
舉例:
dim MyArray(5,10) '定義了一個二維數組
二維賦值舉例:
MYArray(3,3)=100
二維數組還有一種變相的實現方法:
dim MyArray(5)
MyArray(0)=Array(...) '一維數組
MyArray(1)=Array(...)'一維數組
...
訪問的時候,用MyArray(x)(y)這樣的格式
數組的下標
用上面的方法定義數組,每一維數組的第一個元素的下標是0,最后一個元素的下標就是元素數量-1
但也可以指定數組的下標,如:
dim MyArray1(3 to 10) '下標從3到10,MyArray(3)即獲取第一個元素的值
有用的數組函數
Ubound(數組名)函數--返回數組的最后一個元素的下標。
Lbound(數組名)函數--返回數組的第一個元素的下標,缺省為0。
更多應用:
數組排序函數
function Sort(ary) KeepChecking = TRUE Do Until KeepChecking = FALSE KeepChecking = FALSE For I = 0 to UBound(ary) If I = UBound(ary) Then Exit For If ary(I) > ary(I+1) Then FirstValue = ary(I) SecondValue = ary(I+1) ary(I) = SecondValue ary(I+1) = FirstValue KeepChecking = TRUE End If Next Loop Sort = ary End function
數組排序函數應用例子
Dim MyArray MyArray = Array(1,5,123,12,98) MyArray = Sort(MyArray) For I = Lbound(MyArray) to Ubound(MyArray) Response.Write MyArray(I) & "<br>" Next
將一個字符串分割并返回數組
Dim MyArray MyArray = Split(字符串,分割符) For I = Lbound(MyArray) to Ubound(MyArray) Response.Write MyArray(I) & "<br>" Next
在Application和Session中使用數組
Application.Lock
Application("StoredArray") = MyArray
Application.UnlockLocalArray = Application("StoredArray")
覆蓋Application中的數組
Application.Lock
Application("StoredArray") = LocalArray
Application.Unlock
Session使用方法與Application相同
從數據庫中把數據導入數組中
Dim MyArray
取出全部記錄
MyArray = RS.GetRows
取出前10項記錄
MyArray = RS.GetRows(10)
For row = 0 To UBound(MyArray, 2)
For col = 0 To UBound(MyArray, 1)
Response.Write (col, row) & "<br>"
Next
Next
向另一個頁面傳遞數組
現在有很多種方法向另一頁面傳遞數組,目前有三種方法:
定義一個又逗號分隔的字符串,然后再下一頁中用Split函數重新建立數組。
將數組存儲在一個Session變量中,然后在下一個頁面中調用。
通過表單的隱含區域來傳遞數組,他們都是自動用逗號分開,然后再用Split函數重新建立數組。
前兩種方法很好,但是都比第三中復雜。在這里我們將只介紹第三種,因為它是最簡單最有效的。
1.asp:
<%dim Idim myArray(20)for I=0 to 20myArray(I)="Item " & Inext%><html><body><form name="testform" method="post" action="2.asp"><%for I=0 to ubound(myArray)response.write "<input type=hidden name=myArray value='" & myArray(I) & "'>"next%><p><input type="submit"></form></body></html>
以上我們做的是在一個表單中用單獨的隱含域存儲數組中的每個元素,我們再看看下一頁:
2.asp
<html><body><%dim arrStringdim myArraydim IarrString=request("myArray")myArray = split(arrString,",")for I=0 to ubound(myArray) response.write "Item "&I&" = " & myArray(I) & "<br>" & vbCrLfnext%></body></html>以上就是asp數組的使用介紹的詳細內容,更多關于asp數組使用的資料請關注武林網其它相關文章!
新聞熱點
疑難解答