Eval 函数 | Execute 语句 | ExecuteGlobal 语句使用说明

Eval 函数


计算一个表达式的值并返回结果。

 [result = ]Eval(expression)

参数

result

可选项。 是一个变量,用于接受返回的结果。如果未指定结果,应考虑使用 Execute 语句代替。

expression

必选项。可以是包含任何有效 VBScript 表达式的字符串。

说明

在 VBScript 中,x = y 可以有两种解释。第一种方式是赋值语句,将 y 的值赋予 x。第二种解释是测试 xy 是否相等。如果相等,resultTrue;否则 resultFalseEval 方法总是采用第二种解释,而 Execute 语句总是采用第一种。

注意  在Microsoft(R) Visual Basic Scripting Edition 中不存在这种比较与赋值的混淆,因为赋值运算符(=)与比较运算符 (==)不同。

Execute 语句

执行一个或多个指定的语句。

Execute statements

所需要的 statements 参数是一个字符串表达式,其中包含一个或多个要执行的语句。  如果要在 statements 参数中包含多条语句,应使用分号或嵌入的分行将其分隔开。

说明

在 VBScript 中,x = y 可以有两种解释。首先是作为赋值语句,将 y 的值赋予 x。其次是作为表达式,测试xy 的值是否相等。如果相等,结果True;否则,结果FalseExecute 语句总是使用第一种解释,而 Eval 方法总是使用第二种。

注意  在 Microsoft(R) Visual Basic Scripting Edition 中并不存在赋值与比较之间的混淆,因为赋值运算符(=)与比较运算符(==)是不同的。

调用 Execute 语句的上下文确定了要运行的代码可以使用的对象和变量。作用域内的对象和变量是 Execute 语句中运行的代码可以使用的。不过,必须明白的一点是,如果被执行的代码创建了过程,那么该过程将不会继承它所在的过程的作用域。

与其他过程类似,新的过程的作用域是全局的,它继承了全局作用域的全部东西。与其他过程不同的是,它的上下文不是全局作用域,因此它只能在发生 Execute 语句的过程内的上下文中执行。不过,如果相同的 Execute 语句是在过程之外(例如在全局作用域)的作用域中被调用,那么它将不仅继承全局作用域中的所有东西,而且它还可以在任何地方被调用,因为它的上下文是全局的。

ExecuteGlobal 语句

执行一个功多个在脚本全局名字空间中指定的语句。

ExecuteGlobal statement

statement 参数是一个包含一个或多个可执行语句的字符串表达式 。在statement 参数中可以包含多条语句, 使用冒号将其分开。

说明

在 VBScript 中, x = y 有两种解释方法。第一种方法是作为一条赋值语句, 将 y 的值赋给 x。第二种方法是作为一个表达式 ,用于测试 xy 是否具有相同的值。如果它们相等,则结果为 True; 如果他们不相等,其结果为 False.ExecuteGlobal 语句总是使用第一种方法,而 Eval 方法总是使用第二种方法。

注意  在 Microsoft(R) Visual Basic Scripting Edition 中并不存在赋值与比较之间的混淆,因为赋值运算符(=)与比较运算符(==)是不同的。

在脚本的全局名字空间中,ExecuteGlobal 中的所有语句都有是可执行的。因此,允许您将代码添加到程序中,以便于任何 过程 能够对其进行访问。例如,一个 VBScript Class 语句在运行时可以执行。随之函数创造此类的一个新实例。

在运行时添加过程和类是非常有用的,但是也可能导致在运行时覆盖已有的全局 变量 和函数。因为这可能导致非常严重的程序问题,因此,当使用 ExecuteGlobal 语句时一定得非常谨慎。如果您无需访问过程之外的变量或函数,最好使用Execute 语句,因为它只影响主调函数的名字空间。

(0)

相关推荐

  • ASP Eval、Execute、ExecuteGlobal区别分析

    Eval 计算一个表达式的值并返回结果. 语法:[result = ]eval_r(expression_r) expression_r 为任意有效 VBScript 表达式的字符串 示例: 复制代码 代码如下: response.Write(eval_r("3+2")) '输出 5 "3+2" 使用引号括起来,表示是一个字符串,但是在 Eval "眼里",把它当作一个表达式 3+2 来执行. Execute 执行一个或多个指定的语句.多个语句间

  • Eval 函数 | Execute 语句 | ExecuteGlobal 语句使用说明

    Eval 函数 计算一个表达式的值并返回结果.  [result = ]Eval(expression) 参数 result 可选项. 是一个变量,用于接受返回的结果.如果未指定结果,应考虑使用 Execute 语句代替. expression 必选项.可以是包含任何有效 VBScript 表达式的字符串. 说明 在 VBScript 中,x = y 可以有两种解释.第一种方式是赋值语句,将 y 的值赋予 x.第二种解释是测试 x 和 y 是否相等.如果相等,result 为 True:否则 r

  • VBS教程:VBscript语句-ExecuteGlobal 语句

    ExecuteGlobal 语句执行一个功多个在脚本全局名字空间中指定的语句. ExecuteGlobal statement statement 参数是一个包含一个或多个可执行语句的字符串表达式 .在statement 参数中可以包含多条语句, 使用冒号将其分开. 说明在 VBScript 中, x = y 有两种解释方法.第一种方法是作为一条赋值语句, 将 y 的值赋给 x.第二种方法是作为一个表达式 ,用于测试 x 和 y 是否具有相同的值.如果它们相等,则结果为 True; 如果他们不相

  • JavaScript学习小结之被嫌弃的eval函数和with语句实例详解

    前面的话 eval和with经常被嫌弃,好像它们的存在就是错误.在CSS中,表格被嫌弃,在网页中只是用表格来展示数据,而不是做布局,都可能被斥为不规范,矫枉过正.那关于eval和with到底是什么情况呢?本文将详细介绍eval()函数和with语句 eval 定义 eval()是一个全局函数,javascript通过eval()来解释运行由javascript源代码组成的字符串 var result = eval('3+2'); console.log(result,typeof result)

  • Javascript中Eval函数的使用说明

    举个小例子: 复制代码 代码如下: var the_unevaled_answer = "2 + 3"; var the_evaled_answer = eval("2 + 3"); alert("the un-evaled answer is " + the_unevaled_answer + " and the evaled answer is " + the_evaled_answer); 如果你运行这段eval程序,

  • postgresql SQL语句变量的使用说明

    一般变量使用我们都是放在函数里面,这里开发需求,要在SQL直接使用变量,方便查找一些问题,比如时间变量,要根据时间进行筛选 这里有三种方法可以实现 1.psql命令使用变量 表数据如下: hank=> select * from tb2; c1 | c2 | c3 ----+-------+---------------------------- 1 | hank | 2018-02-06 10:08:00.787503 2 | dazui | 2018-02-06 10:08:08.54248

  • Python 中的判断语句,循环语句,函数

    目录 1. 判断语句 1.1 布尔类型和比较运算符 1.1.1 布尔类型 1.1.2 比较运算符 1.2 if 语句 1.2.1 if 语句基本格式 1.2.2 if else 语句 1.2.3 if elif else 语句 1.2.4 判断语句的嵌套 2. 循环语句 2.1 while 循环 2.1.1 while 循环基础语法 2.1.2 while 循环嵌套使用 2.2 for 循环 2.2.1 for 循环基础语法 2.2.2 range 语句 2.2.3 变量作用域 2.2.4 fo

  • VBS教程:函数-Eval 函数

    Eval 函数计算一个表达式的值并返回结果.  [result = ]Eval(expression) 参数result 可选项. 是一个变量,用于接受返回的结果.如果未指定结果,应考虑使用 Execute 语句代替. expression 必选项.可以是包含任何有效 VBScript 表达式的字符串. 说明在 VBScript 中,x = y 可以有两种解释.第一种方式是赋值语句,将 y 的值赋予 x.第二种解释是测试 x 和 y 是否相等.如果相等,result 为 True:否则 resu

  • JavaScript eval()函数定义及使用方法详解

    定义和用法 eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码. 语法 eval(string) 返回值 通过计算 string 得到的值(如果有的话). 说明 该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回.因此请不要为 eval() 函数传递 String 对象来作为参数. 如果试图覆盖 eval 属性或把 eval() 方法赋予另一个属性,并通过该属性调用它,则 ECMAScript 实现允许抛出一个 Ev

  • Python之eval()函数危险性浅析

    一般来说Python的eval()函数可以把字符串"123"变成数字类型的123,但是PP3E上说它很危险,还可以执行其他命令! 对此进行一些试验.果然,如果python写的cgi程序中如果使用eval()而非int()来转换诸如年龄这样的输入框中的内容时是非常危险的.不仅可以看见列出系统的全部文件,还可以执行删除文件,察看文件源代码等危险操作! 试着写了个程序,想把本地的脚本文件同过这样的形式一行一行的写到服务器的某个文件里,可最后失败在无法输入换行符"/n",在

随机推荐