« asp数据库操作类HTML元素 - td »

遍历application.Contents集合的代码

为了遍历Contents集合,可使用一个For Each ... Next结构。集合中的每一项可以是一个简单的Variant类型变量、一个Variant数组或者一个对象的引用。因为需要对每种类型的值进行不同的处理,所以就不得不对每一个进行检查来判别其类型。
在VBscript中可使用VarType函数完成这个工作。这里使用IsObject和IsArray函数代替:
For Each objItem in Application.Contents
   If IsObject(Application.Contents(objItem)) Then
       Response.Write “Object reference: ‘” & objItem & “’<BR>”
   ElseIf IsArray(Application.Contents(objItem)) Then
       Response.Write “Array: ‘” & objItem & “’ contents are:<BR>”
       VarArray = Application.Contents(objItem)
       ‘Note: the following only works with a one-dimensional array
       For intLoop = 0 To UBound(varArray)
           Response.Write “  Index(“ & intLoop & “) = “ & _
                       VarArray(intLoop) & “<BR>”
       Next
   Else
       Response.Write “Variable: ‘” & objItem & “’ = “ _
                   & Application.Contents(objItem) & “<BR>”
   End If
Next
注意程序如何从Application对象检索该数组。将其分配给一个局部(Variant)变量,使用下面的语句:
varArray = Application.Contents(objItem)
使用UBound函数可以查找出数组的大小(元素的数量),这个值可以作为遍历的终止条件:
For intLoop = 0 UBound(varArray)
这个例子是一维数组,并将只显示这样的一个数组的内容。可根据需要编辑代码以处理多维数组,例如:
For intLoop = 0 To UBound(varArray)
   IntNumberOfDimensions = UBound(varArray, 1)
   For intDimension = 0 To intNumberOfDimensions
       Response.Write “  Index(“ & intLoop & “) = “ _
               & varArray(intLoop, intDimension)
   Next
   Response.Write “<BR>”
Next
原创文章如转载,请注明:转载自悠悠博客 [ http://www.ajaxstu.com/ ]

相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。