《Web應用開發(fā)技術.ppt》由會員分享,可在線閱讀,更多相關《Web應用開發(fā)技術.ppt(52頁珍藏版)》請在裝配圖網上搜索。
1、第3章 ASP開發(fā)入門,本章目標,本章結束時,學員能夠: 掌握ASP基本語法 掌握ASP常用內置函數(shù),3.1 數(shù)據(jù)類型,ASP只支持一種數(shù)據(jù)類型:variant。variant數(shù)據(jù)類型能力是根據(jù)它存貯的是什么信息來改變的。 數(shù)據(jù)子類型有很多種,都是ASP支持的數(shù)據(jù)類型,雖然在編寫ASP程序的時候不需要對它進行明確的說明,但是為了真正理解數(shù)據(jù)在ASP程序中如何處理,還是希望對數(shù)據(jù)子類型進行了解,具體如下表:,3.1 數(shù)據(jù)類型(續(xù)),3.2 常量和變量,常量定義 變量定義 變量的作用域,3.2.1 常量的定義,常量是具有一定含義的名稱,用于代替數(shù)字或字符串,其值從不改變。常量還提供了一種“全局”改
2、變的方法。,3.2.2 變量的定義,變量引用計算機內存地址,該地址可以存儲ASP運行時可更改的程序信息。使用變量并不需要了解變量在計算機內存中的地址,只要通過變量名引用變量就可以查看或更改變量的值。 在ASP中,聲明變量有兩種方式:顯式的和隱式的。,3.2.2 變量的定義(續(xù)),3.2.3 變量的作用域,ASP的變量可存在兩個作用域上:“Script水平”和“Procedure水平”。其中,Script-level代碼在所有的Function或Sub模塊之外。Procedure-level代碼在一個Function或Sub之內。Procedure-level代碼是Script-level代碼的
3、子設置。因此,任何在函數(shù)或子程序中進行的變量說明,可在獨立的源程序或子程序中被引用。,3.3 數(shù)組,數(shù)組與一般變量的區(qū)別:一般的變量只保存一個值,數(shù)組可以存儲同種類型的多個值。在一個數(shù)組中,每一個單元有一個編號,第一個單元的編號為0。要引用 數(shù)組中的一個特定的單元只要使用數(shù)組名,接著在括號中寫一個數(shù)字即可。,3.3 數(shù)組(續(xù)),靜態(tài)數(shù)組和動態(tài)數(shù)組 數(shù)組可以有兩種形式:靜態(tài)或動態(tài)。一個靜態(tài)數(shù)組在被聲明后設置了索引數(shù)。動態(tài)數(shù)組允許索引數(shù)在運行時變化,當開始說明變量時,使用空括?。ǎ?。管理動態(tài)數(shù)組時,就需使用ReDim命令。,3.4 運算符,算術運算符 關系運算符 邏輯運算符 連接運算符 運算符的優(yōu)
4、先級,3.4.1 算術運算符,3.4.2 關系運算符(續(xù)),3.4.3 邏輯運算符,邏輯與關系真值表,3.4.3 邏輯運算符(續(xù)),邏輯或關系真值表,3.4.3 邏輯運算符(續(xù)),邏輯非關系真值表,3.4.3 邏輯運算符(續(xù)),邏輯異或關系真值表,3.4.3 邏輯運算符(續(xù)),3.4.4 連接運算符,運算符“&”是真正的字符串連接運算符。加號“+”也可以用來連接字符串。但我們并不建議用該運算符進行字符串相加。因為當“+”運算符用于不同子類型的表達式時,會引起歧義。 例如: “123”456 的結果不會是“123456”而是579,因為加號首先會被認為是數(shù)學運算符加號,如果表達式中有數(shù)字,那么系
5、統(tǒng)會把其他的都轉化成數(shù)字類型,進行加法運算。,3.4.5 運算符的優(yōu)先級,運算符優(yōu)先級用來描述一個順序,即不同的運算符在關鍵字、運算符和變量的組合中的評估值。當表達式包含多個運算符時,將按預定順序計算每一部分,這個順序被稱為運算符優(yōu)先級。 可以使用括號超過這種優(yōu)先級順序,強制首先計算表達式的某些部分。但是,在括號中仍遵循標準運算符優(yōu)先級。,3.4.5 運算符的優(yōu)先級(續(xù)),高,高,低,低,,,3.5 控制結構,控制結構主要有三大類:順序語句、分支語句和循環(huán)語句。 順序語句是按照程序語句的編寫的先后順序執(zhí)行。 分支語句使程序根據(jù)變量和表達式的不同值沿這條路徑或者那條路徑執(zhí)行。 循環(huán)語句使程序在滿
6、足某個條件之前重復執(zhí)行一個動作。,3.5.1 分支語句,3.5.1 分支語句(續(xù)),3.5.1 分支語句(續(xù)),3.5.2 循環(huán)語句,3.5.2 循環(huán)語句(續(xù)),3.5.2 循環(huán)語句(續(xù)),3.6 中斷,在某些情況下,需要停止執(zhí)行一個程序流程中的當前正在執(zhí)行的邏輯。Exit語句允許改變DoLoop,F(xiàn)orNext,函數(shù)或請求源程序區(qū)的子程序的程序流程。,3.7 函數(shù)和過程的概念,函數(shù) 在ASP中,把帶有返回值的這樣的一段代碼叫做函數(shù)。例如通過編寫一段代碼計算出一個自然數(shù)是否是質數(shù),返回給調用程序,由于調用程序需要知道那個自然數(shù)是否是質數(shù),所以必須要返回一個值。 過程 把只是執(zhí)行一段代碼而不需要
7、返回值的叫做過程。例如通過編寫一段代碼在數(shù)據(jù)庫中刪除一些符合條件的記錄,調用的程序并不需要是否刪除完畢了就可以繼續(xù)以后的工作,所以這段代碼不需要告訴調用程序最后的結果。,3.7 函數(shù)和過程的概念(續(xù)),函數(shù)的定義方法:,3.7 函數(shù)和過程的概念(續(xù)),函數(shù)的調用方法:,3.7 函數(shù)和過程的概念(續(xù)),過程的定義方法:,3.7 函數(shù)和過程的概念(續(xù)),過程的調用方法:,3.8 ASP中的內嵌函數(shù),在ASP中提供了一些系統(tǒng)自帶的內嵌函數(shù),即不用編寫任何代碼就可以直接使用這些函數(shù),它們大概分為以下幾類: 取整函數(shù) 數(shù)制轉換函數(shù) 字符串函數(shù) 日期和時間函數(shù) 隨機函數(shù) 類型轉換函數(shù),3.8.1 取整函數(shù)
8、,取整函數(shù)Int和Fix函數(shù)都刪除 number 參數(shù)的小數(shù)部分并返回以整數(shù)表示的結果,3.8.2 數(shù)制轉換函數(shù),3.8.3 字符串函數(shù),刪除空白字符函數(shù)ltrim、rtrim 和 trim :返回不帶前導空格 (ltrim)、后續(xù)空格 (rtrim) 或前導與后續(xù)空格 (trim) 的字符串副本。,3.8.3 字符串函數(shù)(續(xù)),字符串截取函數(shù),3.8.3 字符串函數(shù)(續(xù)),字符串長度測試函數(shù),3.8.3 字符串函數(shù)(續(xù)),string 函數(shù)和空格函數(shù),3.8.3 字符串函數(shù)(續(xù)),字符串匹配函數(shù)instr 函數(shù)返回某字符串在另一字符串中第一次出現(xiàn)的位置。,3.8.3 字符串函數(shù)(續(xù)),字母大
9、小寫轉換 ucase 函數(shù)返回字符串的大寫形式。 lcase 函數(shù)返回字符串的小寫形式。,3.8.3 字符串函數(shù)(續(xù)),字符串比較函數(shù)strcomp 函數(shù)返回指示字符串比較結果的值。,3.8.4 日期和時間函數(shù),3.8.4 日期和時間函數(shù)(續(xù)),3.8.4 日期和時間函數(shù)(續(xù)),3.8.5 隨機函數(shù),rnd 函數(shù)返回一個隨機數(shù),3.8.5 隨機函數(shù)(續(xù)),因每一次連續(xù)調用 rnd 函數(shù)時都用序列中的前一個數(shù)作為下一個數(shù)的種子,所以對于任何最初給定的種子都會生成相同的數(shù)列。在調用 rnd 之前,先使用無參數(shù)的 randomize 語句初始化隨機數(shù)生成器,該生成器具有基于系統(tǒng)計時器的種子。,3.8.6 類型轉換函數(shù),ASP提供9個轉換函數(shù),以幫助減少運行時間錯誤或基于邏輯的錯誤。,本章總結,掌握ASP基本語法 掌握ASP常用內置函數(shù),