我通过这种方式创建了字典:
Dim d : Set d = CreateObject("Scripting.Dictionary")
这是普通的字典。它看起来像
key1 value1
key2 value2
之后我添加了这段代码:
Dim var
var = "test"
Set d(var) = CreateObject("Scripting.Dictionary")
d(var).Add "x", "ValueX"
WScript.Echo d(var).Item("x")
获得“ValueX”
这是什么(var)?它与字典d的关系如何?
答案 0 :(得分:2)
您的字典d
在密钥test
中包含嵌套字典,您可以向其中添加值x
的密钥ValueX
。当您可视化数据结构时,可能会变得更清晰(您可以使用我的辅助函数DumpData()
):
>>> import "C:\Temp\DataDumper.vbs"
>>> Set d = CreateObject("Scripting.Dictionary")
>>> WScript.Echo DumpData(d)
{}
>>> var = "test"
>>> Set d(var) = CreateObject("Scripting.Dictionary")
>>> WScript.Echo DumpData(d)
{
"test" => {}
}
>>> d(var).Add "x", "ValueX"
>>> WScript.Echo DumpData(d)
{
"test" => {
"x" => "ValueX"
}
}
答案 1 :(得分:1)
d
是一本字典。它包含一个键(" test") - 值(d("test")
/ d.Item("test")
)对。这对的价值恰好也是一本字典。那包含一对" x" - " ValueX"。