在 ASP 中使用 Scripting.Dictionary 对象时,有多种方式可以遍历该对象,下面为你详细介绍不同的遍历方法及示例代码。
1. 使用 Keys 方法遍历键,再通过键获取对应的值
Keys 方法会返回一个包含字典中所有键的数组,你可以遍历这个数组,然后通过键来获取对应的字典值。
<%
' 创建 Dictionary 对象
Set dict = Server.CreateObject("Scripting.Dictionary")
' 添加一些示例数据
dict.Add "key1", "value1"
dict.Add "key2", "value2"
dict.Add "key3", "value3"
' 获取包含所有键的数组
Dim keysArray
keysArray = dict.Keys
' 遍历键数组
For i = LBound(keysArray) To UBound(keysArray)
Dim currentKey, currentValue
currentKey = keysArray(i)
currentValue = dict(currentKey)
Response.Write "键: " & currentKey & ", 值: " & currentValue & "<br>"
Next
' 释放对象
Set dict = Nothing
%>
代码解释:
首先创建了一个 Scripting.Dictionary 对象并添加了一些示例数据。
使用 Keys 方法获取包含所有键的数组 keysArray。
通过 For 循环遍历 keysArray,在每次循环中获取当前键,并通过该键从字典中获取对应的值,最后将键和值输出。
2. 使用 Items 方法遍历值(不关心键)
如果你只对字典中的值感兴趣,不关心对应的键,可以使用 Items 方法。Items 方法会返回一个包含字典中所有值的数组。
<%
' 创建 Dictionary 对象
Set dict = Server.CreateObject("Scripting.Dictionary")
' 添加一些示例数据
dict.Add "key1", "value1"
dict.Add "key2", "value2"
dict.Add "key3", "value3"
' 获取包含所有值的数组
Dim valuesArray
valuesArray = dict.Items
' 遍历值数组
For i = LBound(valuesArray) To UBound(valuesArray)
Dim currentValue
currentValue = valuesArray(i)
Response.Write "值: " & currentValue & "<br>"
Next
' 释放对象
Set dict = Nothing
%>
代码解释:
同样先创建 Scripting.Dictionary 对象并添加示例数据。
使用 Items 方法获取包含所有值的数组 valuesArray。
通过 For 循环遍历 valuesArray,在每次循环中获取当前值并输出。
3. 使用 For Each 循环遍历键和值
For Each 循环可以更简洁地遍历字典的键,然后通过键获取对应的值。
<%
' 创建 Dictionary 对象
Set dict = Server.CreateObject("Scripting.Dictionary")
' 添加一些示例数据
dict.Add "key1", "value1"
dict.Add "key2", "value2"
dict.Add "key3", "value3"
' 使用 For Each 循环遍历键
For Each key In dict
Dim value
value = dict(key)
Response.Write "键: " & key & ", 值: " & value & "<br>"
Next
' 释放对象
Set dict = Nothing
%>
代码解释:
创建 Scripting.Dictionary 对象并添加示例数据。
使用 For Each 循环直接遍历字典的键,在每次循环中获取当前键,并通过该键从字典中获取对应的值,最后将键和值输出。