Eval
函数的正常用法如下:
ValueName2 = Eval("Value" + CStr(CurrentValue) + "Name2")
这可以根据Value[n]Name2
返回CurrentValue
。
然后我尝试在反之亦然模式中使用Eval
:
Eval("Value" + CStr(CurrentValue) + "Name2") = ValueName2
所以无论是原始变量(例如:ValueName2
,Value1Name2
.....),这总是可以返回,Value100Name2
。
但是,这次当我检查Value1Name2
的值时,它是空的,VB Script也会返回错误:
类型不匹配:“Eval”
那我怎样才能在反之亦然模式中使用Eval
?
先谢谢。
答案 0 :(得分:3)
Eval
将始终返回值,而不是变量引用,因此,您无法使用Eval
来解决问题。
您可以使用
Call Execute( "Value" + CStr(CurrentValue) + "Name2 = ValueName2" )
但使用数组或字典更容易,更快捷。