通过串联VBS中的其他两个变量名称来定义新变量
我两周前正在编写一个长脚本,现在由于脚本的编写方式,我需要通过串联两个现有变量名来定义变量名。我不想连接它们的值,而是连接变量本身以创建新变量。
听起来可能很可笑,但是鉴于这种情况,我别无选择。
I am writing a long script for two weeks ago and now due to the way whose it's written, I need to define a variable name by concatenation of two existing variable names. I don't want to concatenate their values but the variables themselves in order to make a new variable. That may sound ridicule, but given the situation, I have no other choice.
Is it possible?
感谢您的理解。
VBScript不支持自省,因此您无法从脚本内部动态解析变量名。但是,可能有一种可行的方法。如果不是使用变量 a
和 b
,而是使用键为 a的字典
和 b
,您可以将这些键名连接起来以生成新的键 ab
:
VBScript doesn't support introspection, so you can't dynamically resolve variable names from within the script. However, there might be a possible way to go about. If instead of variables a
and b
you use a dictionary with keys "a"
and "b"
you could concatenate those key names to produce a new key "ab"
:
Set d = CreateObject("Scripting.Dictionary")
d.Add "a", 23
d.Add "b", 42
newkey = ""
For Each key In d.Keys
newkey = newkey & key
Next
d.Add newkey, 2342
但是,如果您描述的是您要解决的实际问题而不是您认为的解决方案,则可能会得到更好的答案。
However, you might be able to get a better answer if you described the actual problem you're trying to solve instead of what you perceive as the solution.