zoukankan      html  css  js  c++  java
  • asp 数组

    定义简单数组

    有两种方法在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) '将数组大小重新定义为20

    ReDim 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.Unlock

    LocalArray = 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 I
    dim myArray(20)

    for I=0 to 20
    myArray(I)="Item " & I
    next
    %>
    <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 arrString
    dim myArray
    dim I

    arrString=request("myArray")
    myArray = split(arrString,",")

    for I=0 to ubound(myArray)
    response.write "Item "&I&" = " & myArray(I) & "<br>" & vbCrLf
    next
    %>
    </body>
    </html>

  • 相关阅读:
    SVG.js 文本绘制整理
    SVG.js 基础图形绘制整理(二)
    SVG.js 基础图形绘制整理(一)
    C# 异步编程Task整理(一)
    Svg.Js 父类的基础操作
    Svg.Js A标签,链接操作
    Svg.Js 简介(转)
    SVG 相关整理
    Kendo UI
    Kendo UI
  • 原文地址:https://www.cnblogs.com/streetpasser/p/3151274.html
Copyright © 2011-2022 走看看