asp/vbscript中eval和execute函数

  Javascript中的eval函数让我们可以很方便地操作一系列变量(a1,a2,a3,……)。自从VBScript 5.0之后,也可以ASP中使用这个功能了!

  和Javascript一样,eval()也是计算其中字符串所代表变量的值并返回,如eval("a"&"1")返回a1的值。不过这个 eval()的功能和Javascript比起来还是有差距的。我试了一下,发现主要有以下一点:VBScript中的eval函数只能读取返回值而不能为其中所代表变量赋值,即我们不可以用eval("a"&"1")为a1赋值。

  如果是赋值予数组,那我们可以建立动态数组:

+展开
-VBScript
use="2005081200507120050612005051"
dim myarray()
reDim myarray(0)
for i=1 to Len(use) step 7
reDim myarray(ubound(myarray)+1) '将数组容量加1
myarray(ubound(myarray))=mid(use,i,7)
next


  现在要赋值给系列变量,得引入另外一个函数execute()。这个函数的作用是将其中字符串视为VBScript语句执行,如execute("a"&"1="&100")是执行以下语句:a1=100。
据此,我们可以按那位朋友的要求写出以下代码:
+展开
-VBScript

use="2005081200507120050612005051"
dim n '作为变量a后的索引1,2,3,…
n=1
for i=1 to Len(use) step 7
execute "dim a"&CStr(n)&":a"&CStr(n)&"="&mid(use,i,7)
'执行语句dim a:a1=mid(use,i,7)
n=n+1
next

加支付宝好友偷能量挖...


原创文章,转载请注明出处:asp/vbscript中eval和execute函数

评论(0)Web开发网
阅读(190)喜欢(0)Asp/VBScript