Asp classic 如何在经典ASP中遍历集合?
我希望能够做到:Asp classic 如何在经典ASP中遍历集合?,asp-classic,vbscript,Asp Classic,Vbscript,我希望能够做到: For Each thing In things End For 经典的ASP-不是.NET 无论您的[东西]是什么,都需要在VBScript之外编写 在VB6中,您需要编译为ActiveX DLL,并在Web服务器上注册以访问它。类似这样的内容 dim cars(2),x cars(0)="Volvo" cars(1)="Saab" cars(2)="BMW" For Each x in cars respo
For Each thing In things
End For
经典的ASP-不是.NET 无论您的[东西]是什么,都需要在VBScript之外编写 在VB6中,您需要编译为ActiveX DLL,并在Web服务器上注册以访问它。类似这样的内容
dim cars(2),x
cars(0)="Volvo"
cars(1)="Saab"
cars(2)="BMW"
For Each x in cars
response.write(x & "<br />")
Next
你最接近的方法就是使用字典(正如帕西菲卡所提到的) 但我像一个收藏品一样翻阅我的字典
For Each Entry In objDictionary
Response.write objDictionary(Entry) & "<br />"
Next
你也可以这样做
For Each Entry In objDictionary
Response.write Entry & ": " & objDictionary(Entry) & "<br />"
Next
正如Brett所说,最好使用vb组件来创建集合。在ASP中,字典对象不是很常用,除非用于基于特定需求的应用程序 我以前使用过的一种方法是使用集合的一个属性,该属性返回一个可以迭代的数组
Class MyCollection
Public Property Get Items
Items = ReturnItemsAsAnArray()
End Property
...
End Class
像这样迭代:
Set things = New MyCollection
For Each thing in things.Items
...
Next
使用VB脚本字典对象时要非常小心
只要发现这个“自动生存”“东西,就可以在这个物体上找到: 因此,当您需要比较值时,切勿使用boolen比较,如:
如果objDic.Item(“varName”)”,则…
这将自动将键“varName
”添加到字典中(如果不存在,则为空值),以便对布尔表达式进行求值
如果需要,如果objDic.Exists(“varName”)
则使用
只需花几天时间使用Mcrosoft的“功能”敲打墙壁即可。…
For Each Entry In objDictionary
Response.write Entry & ": " & objDictionary(Entry) & "<br />"
Next
Name: Scott
Age: 20
Class MyCollection
Public Property Get Items
Items = ReturnItemsAsAnArray()
End Property
...
End Class
Set things = New MyCollection
For Each thing in things.Items
...
Next