麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > ASP > 正文

ASP基礎入門第三篇(ASP腳本基礎)

2024-05-04 11:10:07
字體:
來源:轉載
供稿:網友

通過前兩篇的學習,相信各位已經對 ASP 的動態網站設計有了一個基本的概念和整體的印象。從本篇開始作者將從腳本語言的使用著手,由淺入深地帶領大家探索 ASP 動態網站設計的真正奧秘。

下面就先請大家跟我來學習一些ASP 中應用腳本語言(以VBScript 為主)的基礎知識。

在開始學習腳本語言之前,你應該理解一些簡單的概念 -- 變量、進程。所謂變量是計算機內存中已命名的存儲位置,其中包含了數字或字符串等數據,它使用戶便于理解腳本操作的名稱,為用戶提供了一種存儲、檢索和操作數據的途徑。程序是由一個或多個進程組成的,在 VBScript 中,進程就是“指令塊”,通常意義上的進程,如 Sub,只是為了簡單的數據處理。

在 VBScript 中,嚴格的來講變量是不用聲明的,

如:

 

 
  1. < % Mystring="This is my string" % > 

然而,即使在使用變量前不需要去聲明變量,也應養成在編程時聲明變量的良好習慣,因為這樣有助于防止錯誤發生。聲明一個變量意味著告訴腳本引擎,有一個特定名稱的變量,這樣就可以在腳本中引用該變量。在 VBScript 中聲明一個變量可以使用“Dim”語句,如下:

 

 
  1. < script language="VBScript" >  
  2.    < !--  
  3.    Option Explicit ' 要求在腳本中聲明所有的變量  
  4.    Dim Mystring  
  5.    Mystring="This is my string" 
  6.    -- >  
  7.    < /script> 

變量的作用域即生命期,決定哪些腳本命令可訪問變量。在過程內部聲明的變量具有局部作用域。每執行一次過程,變量就被創建然后消亡。而過程外部的任何命令都不能訪問它。在過程外部聲明的變量具有全局作用域,其值能被 ASP 頁上的任何腳本命令訪問和修改。聲明變量時,局部變量和全局變量可以有相同的名稱。而改變其中一個的值并不會改變另一個的值。如果沒有聲明變量,則可能不小心會改變一個全局變量的值。例如,以下腳本命令返回值 1,雖然有兩個名為 Y 變量:

 

 
  1. < %  
  2.    Dim YY = 1Call SetLocalVariableResponse.Write Y  
  3.    Sub SetLocalVariable  
  4.    Dim Y  
  5.    Y = 2End Sub % > 

由于變量沒有顯式聲明,以下的腳本命令將返回 2。當過程調用將 Y 設置為 2 時,腳本引擎認為該過程是要修改全局變量:

 

 
  1. <%  
  2.    Y = 1Call SetLocalVariableResponse.Write Y  
  3.    Sub SetLocalVariable  
  4.    Y = 2  
  5.    End Sub% > 

然而,全局變量僅在單個 ASP 頁中可用,要使它在單個 ASP 頁之外可用,就必須為變量賦予會話或應用程序作用域。會話作用域變量對一個用戶所請求的 ASP 應用程序中的所有頁都是可用的。應用程序作用域變量也如此。對單個用戶來說,會話變量是存儲信息的最佳途徑,例如,用戶首選項、用戶名或用戶的標識。對于一個特殊應用程序的所有用戶,應用程序作用域是存儲信息的最佳途徑,例如,應用程序特定的問候語或應用程序所需的初始值。ASP 提供兩個內建對象來讓您存儲變量:Session 對象和 Application 對象,這將在今后的 ASP 內建對象中著重討論。

讓我們再來看看常量的定義,常量是用來代替一個數或字符串的名稱,它在整個腳本中保持不變。您可以使用 Const 語句在 VBScript 中創建用戶自定義常數。使用 Const 語句可以創建名稱具有一定含義的字符串型或數值型常數,并給它們賦原義值。例如:。

如:< % Const mystring=" 這是一個常量 " % >

< % Const myage=100 % >

請注意字符串文字包含在兩個引號 (" ") 之間。這是區分字符串型常數和數值型常數的最明顯的方法。日期文字和時間文字包含在兩個井號 (#) 之間。例如:

< % Const CutoffDate = #6-1-97# % >

在理解了常量和變量之后,我們來看看什么是過程。它是一組能執行指定任務且具有返回值的腳本命令。您可以定義自己的過程,然后在腳本中反復調用它們。您可以將過程定義放在調用過程的 .asp 文件中,也可以將通用過程放在一個共享的 .asp 文件中,然后用 SSI #include 指令將其包含進其他調用其過程的 .asp 文件中。您還可選擇另一種方法,即把這些功能打包在 ActiveX 組件中。過程定義可出現在 < SCRIPT > 和 < /SCRIPT > 標記內部且必須遵循聲明腳本語言的規則。如果過程所用的語言與主腳本語言不同,則要使用 < SCRIPT > 元素。主腳本語言中的過程用腳本分界符 (< % 和 % >) 分隔。用 HTML< SCRIPT > 標記時,必須使用兩個屬性來保證服務器端能夠處理腳本。使用 < SCRIPT > 標記的語法如下:

 

 
  1. < SCRIPT RUNAT=SERVER LANGUAGE=JSCRIPT >  
  2.    procedure definition  
  3.    < /SCRIPT > 

這里的 RUNAT=SERVER 屬性通知 Web 服務器在服務器上處理腳本。若不設置該屬性,腳本將由客戶端瀏覽器處理。LANGUAGE 屬性決定此腳本塊所用的腳本語言。您可以指定任何一種具有腳本引擎的語言。請使用 VBSCRIPT 指定 VBScript;用 JSCRIPT 指定 JScript。若不設置 LANGUAGE 屬性,將用主腳本語言解釋此腳本塊。

在 VBScript 中,過程被分為兩類:Sub 過程和 Function 過程。Sub 過程是包含在 Sub 和 End Sub 語句之間的一組 VBScript 語句,執行操作但不返回值。Sub 過程可以使用參數(由調用過程傳遞的常數、變量或表達式)。如果 Sub 過程無任何參數,則 Sub 語句必須包含空括號 ()。

Function 過程是包含在 Function 和 End Function 語句之間的一組 VBScript 語句。Function 過程與 Sub 過程類似,但是 Function 過程可以返回值。Function 過程可以使用參數(由調用過程傳遞的常數、變量或表達式)。如果 Function 過程無任何參數,則 Function 語句必須包含空括號 ()。Function 過程通過函數名返回一個值,這個值是在過程的語句中賦給函數名的。Function 返回值的數據類型總是 Variant。在下面的示例中 Sub 過程使用兩個固有的(或內置的)VBScript 函數,即 MsgBox 和 InputBox,來提示用戶輸入信息。然后顯示根據這些信息計算的結果。計算由使用 VBScript 創建的 Function 過程完成,Celsius 函數將華氏度換算為攝氏度。Sub 過程 ConvertTemp 調用此函數時,包含參數值的變量被傳遞給函數。換算結果返回到調用過程并顯示在消息框中。

 

 
  1. Sub ConvertTemp()  
  2.   temp = InputBox(" 請輸入華氏溫度。", 1)  
  3.   MsgBox " 溫度為 " & Celsius(temp) & " 攝氏度。" 
  4.   End Sub  
  5.   Function Celsius(fDegrees)  
  6.   Celsius = (fDegrees - 32) * 5 / 9  
  7.   End Function 

給過程傳遞數據的途徑是使用參數。參數被作為要傳遞給過程的數據的占位符。參數名可以是任何有效的變量名。使用 Sub 語句或 Function 語句創建過程時,過程名之后必須緊跟括號。括號中包含所有參數,參數間用逗號分隔。例如,在下面的示例中,fDegrees 是傳遞給 Celsius 函數的值的占位符:

 

 
  1. Function Celsius(fDegrees)  
  2.   Celsius = (fDegrees - 32) * 5 / 9  
  3.   End Function  

要從過程獲取數據,必須使用 Function 過程。請記住,Function 過程可以返回值;Sub 過程不返回值。

以上給大家簡要介紹了VBScript,由于篇幅的原因,不可能在此詳盡介紹 VBScript 的所有知識。但是由于 ASP 本身并不是一種編程語言,因此在大家編寫ASP 應用程序的過程中,必須借助腳本語言來實現許多特殊的功能,所以靈活熟練地掌握腳本語言對一個使用ASP 編寫WEB 應用程序的程序員來說是至關重要的。

無論您是一個有豐富編程經驗的高手還是一個初學者,只要您現在希望通過ASP 編寫WEB 應用程序,小編極力建議您掌握至少一門腳本語言(如VBScript)。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩每日更新 | 午夜视 | 欧美视频一区二区三区在线观看 | 国内精品久久久久久2021浪潮 | 久久露脸国语精品国产91 | 久久久久久久免费视频 | 色视频在线播放 | 羞羞视频免费观看入口 | 成人免费毛片在线观看 | 国产午夜亚洲精品 | 性欧美视频在线观看 | 毛片大全免费看 | 天天躁狠狠躁夜躁2020挡不住 | 毛片视频免费播放 | 亚洲一区二区在线免费 | 精品小视频 | 国产精品久久久久久婷婷天堂 | 成人福利视频导航 | 欧洲精品久久 | 亚洲午夜一区二区三区 | 久久久久久久久亚洲精品 | 国产精品久久久久久久久久三级 | 色999中文字幕 | 国产成人高清在线 | 久久国产精品久久久久久久久久 | 久久精品视频69 | 久久综合精品视频 | 13一14毛片免费看 | 人人舔人人舔 | 成人在线观看免费视频 | 国产高潮好爽受不了了夜色 | 久久久久久久久浪潮精品 | 久久久亚洲欧美综合 | 日本网站在线看 | 九九热精品在线 | 福利一区二区三区视频在线观看 | 欧美性色生活片免费播放 | 国产午夜亚洲精品理论片大丰影院 | 精品久久www | 2021国产精品视频 | 亚洲无线看 |