У меня есть a Dictionary
объект в VBScript. Как я могу скопировать все объекты, содержавшиеся в нем к новому Dictionary
, т.е. создайте клон/дубликат словаря?
Создайте новый объект Dictionary
, пройдитесь итерацией по ключам в исходном словаре и добавьте эти ключи и соответствующие значения в новый словарь, вот так:
Function CloneDictionary(Dict)
Dim newDict
Set newDict = CreateObject("Scripting.Dictionary")
For Each key in Dict.Keys
newDict.Add key, Dict(key)
Next
newDict.CompareMode = Dict.CompareMode
Set CloneDictionary = newDict
End Function
В большинстве случаев этого должно быть достаточно. Однако, если ваш исходный словарь содержит объекты, вам придется реализовать глубокое клонирование, то есть клонировать и эти объекты.