时间:2021-05-23
执行一个或多个指定的语句。
Execute statements
所需要的 statements 参数是一个字符串表达式,其中包含一个或多个要执行的语句。 如果要在 statements 参数中包含多条语句,应使用分号或嵌入的分行将其分隔开。
在 VBScript 中,x = y 可以有两种解释。首先是作为赋值语句,将 y 的值赋予 x。其次是作为表达式,测试x 和 y 的值是否相等。如果相等,结果为 True;否则,结果为 False。Execute 语句总是使用第一种解释,而 Eval 方法总是使用第二种。
注意在 Microsoft(R) Visual Basic Scripting Edition 中并不存在赋值与比较之间的混淆,因为赋值运算符(=)与比较运算符(==)是不同的。
调用 Execute 语句的上下文确定了要运行的代码可以使用的对象和变量。作用域内的对象和变量是 Execute 语句中运行的代码可以使用的。不过,必须明白的一点是,如果被执行的代码创建了过程,那么该过程将不会继承它所在的过程的作用域。
与其他过程类似,新的过程的作用域是全局的,它继承了全局作用域的全部东西。与其他过程不同的是,它的上下文不是全局作用域,因此它只能在发生 Execute 语句的过程内的上下文中执行。不过,如果相同的 Execute 语句是在过程之外(例如在全局作用域)的作用域中被调用,那么它将不仅继承全局作用域中的所有东西,而且它还可以在任何地方被调用,因为它的上下文是全局的。下面的例子说明了这种特点:
Dim X' 在全局作用域中声明 X。X = "Global"' 将全局的 X 赋值。Sub Proc1' 声明过程。 Dim X' 在局部作用域中声明 X。 X = "Local"' 对局部的 X 赋值。' 此处的 Execute 语句建立了一个过程,' 在调用该过程时它将打印 X。' 它打印的将是全局 X,因为 Proc2' 继承了全局作用域中的一切。 Execute "Sub Proc2: Print X: End Sub" Print Eval("X")' 打印本地 X。 Proc2' 在 Proc1 的作用域中调用 Proc2。End SubProc2' 本行将导致一个错误,因为' Proc2 在 Proc1 之外是不可使用的。Proc1' 调用 Proc1。 Execute "Sub Proc2: Print X: End Sub"Proc2' 这句话可以成功,因为 Proc2' 现在是全局可用的。下面的例子显示了如何将 Execute 语句改写,免于将整个过程包含在引号内:
S = "Sub Proc2" & vbCrLfS = S & " Print X" & vbCrLf S = S & "End Sub"Execute S声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
VBScript过程在VBScript中,过程被分为两类:Sub过程和Function过程。Sub过程Sub过程是包含在Sub和EndSub语句之间的一组VBS
使用条件语句控制程序执行使用条件语句和循环语句可以控制脚本的流程。使用条件语句可以编写进行判断和重复操作的VBScript代码。在VBScript中可使用以下条
继上一篇我们学习了脚本语言VBScript的函数和条件语句后,今天我们继续来看看VBScript中的循环语句。 循环语句的作用就是重复执行程序代码,循环可分为
条件语句是根据条件进行判断,并根据判断结果选择所要执行的代码的语句。在VBScript中主要使用以下两种条件语句: If...Then...Else语句:
Function过程是包含在Function和EndFunction语句之间的一组VBScript语句。Function过程与Sub过程类似,但是Funct