asp中使用redim、preserve创建动态数组实例
asp中REDIM的功能是动态定义数组长度
动态数组里面的一个语句,只能出现在过程里面,可以多次使用。可以改变数组大小,和维数。
格式:
REDIM[Preserve]数组名(下标1[下标2....])
Preserve保留动态数组的内容(不用的话,每次执行REDIM语句,当前存储的语句会全部丢失)
例如:
DimDynArray()'定义数组DynArray()为动态数组 REDIMPreserveDynArray(20)'为该数组分配元数个数
这样对编程中一些动态的改变数组是非常重要的,而且经常能用到,处理到,这REDIM深入了解第二电脑认为对自己的编程的提高很有帮助。
下面举一些ASP数组的例子,当然不全是动态数组
在ASP编程中使用数组:
数组的定义:
DimMyArray MyArray=Array(1‚5‚123‚12‚98)
可扩展数组:
DimMyArray() fori=0to10 ReDimPreserveMyArray(i) MyArray(i)=i next
将一个字符串分割并返回分割结果的数组:
DimMyArray MyArray=Split(tempcnt‚chr(13)&chr(10)) ForI=Lbound(MyArray)toUbound(MyArray) Response.WriteMyArray(I)&"<br>" Next
数组排序函数:
function..Sort(ary) KeepChecking=TRUE DoUntilKeepChecking=FALSE KeepChecking=FALSE ForI=0toUBound(ary) IfI=UBound(ary)ThenExitFor Ifary(I)>ary(I+1)Then FirstValue=ary(I) SecondValue=ary(I+1) ary(I)=SecondValue ary(I+1)=FirstValue KeepChecking=TRUE EndIf Next Loop Sort=ary Endfunction
数组排序函数应用例子:
DimMyArray MyArray=Array(1‚5‚123‚12‚98) MyArray=Sort(MyArray) ForI=Lbound(MyArray)toUbound(MyArray) Response.WriteMyArray(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相同,从数据库中把数据导入数组中:
DimMyArray '取出全部记录 MyArray=RS.GetRows '取出前10项记录 MyArray=RS.GetRows(10) Forrow=0ToUBound(MyArray‚2) Forcol=0ToUBound(MyArray‚1) Response.Write(col‚row)&"<br>" Next Next
通过以上的例子可以加深我们对数组的理解,在实际运用中加以灵活运用。