在 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 循环直接遍历字典的键,在每次循环中获取当前键,并通过该键从字典中获取对应的值,最后将键和值输出。