程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> Eval 函數 | Execute 語句 | ExecuteGlobal 語句使用說明

Eval 函數 | Execute 語句 | ExecuteGlobal 語句使用說明

編輯:關於ASP編程

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 語句,因為它只影響主調函數的名字空間。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved