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。
更多应用:
数组排序函数
[code]
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>
下一篇: JSP实现的简单Web投票程序代码
推荐阅读
-
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
-
php的array数组和使用实例简明教程(容易理解)
-
oracle的decode()含义及使用介绍
-
Lenovo笔记本Flex触摸板无法使用/失灵现象的解决办法介绍
-
使用asp实现支持附件的邮件系统(二)
-
创建基于ASP.NET core 3.1 的RazorPagesMovie项目(一)-创建和使用默认的模板
-
使用NuGet将我们的ASP.NET Core类库打包并将程序包(类库)发布到NuGet平台上进行管理
-
c/c++ 数组的智能指针 使用
-
西瓜影音安装使用及西瓜影音播放器查找和下载视频的方法介绍
-
使用逐鹿工具箱时文字显示为乱码的解决方法介绍