VBScript腳本語(yǔ)言基礎(chǔ)_第1頁(yè)
VBScript腳本語(yǔ)言基礎(chǔ)_第2頁(yè)
VBScript腳本語(yǔ)言基礎(chǔ)_第3頁(yè)
VBScript腳本語(yǔ)言基礎(chǔ)_第4頁(yè)
VBScript腳本語(yǔ)言基礎(chǔ)_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第3章 VBScript腳本語(yǔ)言基礎(chǔ),3. 1 腳本語(yǔ)言概述 3. 2 VBScript腳本語(yǔ)言 3. 3 VBScript常用函數(shù) 3. 4 VBScript編程實(shí)例,3. 1 腳本語(yǔ)言概述,3. 1. 1 服務(wù)器端腳本和客戶端腳本 目前比較流行的腳本語(yǔ)言有兩種:VBScript和JavaScript。其中VBScript基于Microsoft公司的Visual Basic語(yǔ)言;而JavaScript基于SUN公司的Java語(yǔ)言。 使用VBScript和JavaScript,既可以編寫服務(wù)器端腳本,也可以編寫客戶端腳本。,3. 1 腳本語(yǔ)言概述,服務(wù)器端腳本和客戶端腳本的主要區(qū)別: 服務(wù)器端

2、腳本在Web服務(wù)器上執(zhí)行,由服務(wù)器根據(jù)腳本的執(zhí)行結(jié)果生成相應(yīng)的HTML頁(yè)面并發(fā)送到客戶端瀏覽器中并顯示。 客戶端腳本由瀏覽器進(jìn)行解釋執(zhí)行。,3. 1 腳本語(yǔ)言概述,3. 1. 2 VBScript和JavaScript VBScript和JavaScript都是腳本語(yǔ)言。VBScript是Microsoft Visual Basic的簡(jiǎn)化版本,而JavaScript是基于SUN公司的Java語(yǔ)言。目前可以解釋VBScript腳本的瀏覽器只有Microsoft Internet Explorer,而Netscape Navigater將忽略VBScript腳本。在Active Sever Pag

3、es中的缺省語(yǔ)言是VBScript。,本章首頁(yè),什么是 VBScript? Microsoft Visual Basic Scripting Edition 是程序開發(fā)語(yǔ)言 Visual Basic 家族的最新成員,它將靈活的腳本應(yīng)用于更廣泛的領(lǐng)域,包括 Microsoft Internet Explorer 中的 Web 客戶機(jī)腳本和 Microsoft Internet Information Service 中的 Web 服務(wù)器腳本。,聲明腳本語(yǔ)本語(yǔ)言種類的幾種方法,通過IIS指定一個(gè)默認(rèn)腳本語(yǔ)言 在ASP文件中加以聲明 在標(biāo)記中加入所需的語(yǔ)言,例如: Response.write(“H

4、ello World!”) ,MsgBox用于顯示一個(gè)信息文本框 語(yǔ)法:Msgbox “顯示的文本內(nèi)容”,n+m,”標(biāo)題內(nèi)容” n值為:0-5,m值為:16/32/48/64 如: MsgBox(“這是一個(gè)彈出信息對(duì)話框”) ,InputBox用于產(chǎn)生一個(gè)輸入文本框 語(yǔ)法: Inputbox “顯示的文本”,”標(biāo)題內(nèi)容”,”默認(rèn)內(nèi)容”,”窗口的水平坐標(biāo)”,”垂直坐標(biāo)” 注意:他們都是解釋后立即在當(dāng)前位置執(zhí)行的語(yǔ)句,因此它們不能在服務(wù)器端腳本中使用,3. 2 VBScript腳本語(yǔ)言,3. 2. 1 將單行語(yǔ)句分成多行 使用續(xù)行符“ -”(由一個(gè)空格和一個(gè)下劃線組成),將長(zhǎng)的語(yǔ)句分成多行書寫。,

5、3. 2 VBScript腳本語(yǔ)言,3. 2. 2 在代碼中加注釋 注釋語(yǔ)句可以有兩種表現(xiàn)形式,一種是通過使用Rem語(yǔ)句,Rem后的任何文本都會(huì)認(rèn)為是對(duì)程序的注釋,不會(huì)被處理。另一種是采用西文單引號(hào)“”,即以撇號(hào)作為注釋的開始,注釋可以和語(yǔ)句在同一行并寫在語(yǔ)句的后面,也可以單獨(dú)占一行。,3. 2 VBScript腳本語(yǔ)言,3. 2. 3 使用不同進(jìn)制的數(shù)字 在VBScript中,除了可以用默認(rèn)的十進(jìn)制來表示數(shù)字外,還允許使用十六進(jìn)制或八進(jìn)制來表示數(shù)字。 十六進(jìn)制數(shù):&h 如&h9 八進(jìn)制數(shù):&0或&o 如&o11,3. 2 VBScript腳本語(yǔ)言,3. 2. 4 數(shù)據(jù)類型 在VBScript

6、中,只有一種數(shù)據(jù)類型,即Variant類型,但變量可以根據(jù)所賦值的不同而代表不同類型的數(shù)據(jù)。 在Variant類型中包含了多種子數(shù)據(jù)類型 。,3-2 VBScript的基本元素,數(shù)據(jù)類型 在 VBScript 中只有一個(gè)基本數(shù)據(jù)類型,即 Variant(不定型數(shù)據(jù)類型),因此所有變量的數(shù)據(jù)類型都是 Variant。 1、多數(shù)情況下, Variant類型會(huì)按照最適用于包含的數(shù)據(jù)方式進(jìn)行操作 2、還會(huì)根據(jù)代碼的上下文自動(dòng)轉(zhuǎn)換數(shù)據(jù)的類型,Dim Var Var=2005 整數(shù)類型 Var=“2005” 字符串類型 Var=#2005-09-12# 日期類型 注:在代碼中使用日期和時(shí)間值時(shí),必須用一對(duì)

7、#號(hào)將其括起來, 如 #13-9-2005 11:10:30PM#,3. 2 VBScript腳本語(yǔ)言,3. 2. 5 常量 1文字常量 (1)字符串常量 :“中國(guó)” (2)數(shù)值常量 123 (3)日期時(shí)間型常量 #2006-3-7# 2符號(hào)常量 Const pi=3.1415 3.固有常量,常 量,常量是具有一定含義的名稱,用于代替數(shù)字或字符串,其值從不改變。 創(chuàng)建常數(shù) 可以使用 const語(yǔ)句在 VBScript 中創(chuàng)建用戶自定義常數(shù)。使用 Const 語(yǔ)句可以創(chuàng)建名稱具有一定含義的字符串型或數(shù)值型常數(shù),并給它們賦原義值。例如: Const MyString = 這是一個(gè)字符串。 Cons

8、t MyAge = 49 Const PI=3.1415,注意: 字符串文字包含在兩個(gè)引號(hào) (“ ”) 之間。這是區(qū)分字符串型常數(shù)和數(shù)值型常數(shù)的最明顯的方法。 日期或時(shí)間類型包含在兩個(gè)井號(hào) (#) 之間。例如: Const CutoffDate = #6-1-97# 最好采用一個(gè)命名方案以區(qū)分常數(shù)和變量。這樣可以避免在運(yùn)行腳本時(shí)對(duì)常數(shù)重新賦值。例如,可以使用“vb”或“con”作常數(shù)名的前綴,或?qū)⒊?shù)名的所有字母大寫。將常數(shù)和變量區(qū)分開可以在開發(fā)復(fù)雜的腳本時(shí)避免混亂。,3. 2 VBScript腳本語(yǔ)言,3. 2. 6 變量 1變量命名約定 2聲明變量 3變量的作用域 變量的作用域指的是變量的

9、有效范圍,因?yàn)樽兞勘宦暶骱蟛皇窃谌魏蔚胤蕉伎梢员皇褂茫總€(gè)變量都有它的使用范圍,在作用域內(nèi)可以使用變量,在作用域外則變量不可見。,變 量,變量是一種使用方便的占位符,用于引用計(jì)算機(jī)內(nèi)存地址,該地址可以存儲(chǔ)腳本運(yùn)行時(shí)可更改的程序信息。例如,可以創(chuàng)建一個(gè)名為 ClickCount 的變量來存儲(chǔ)用戶單擊 Web 頁(yè)面上某個(gè)對(duì)象的次數(shù)。使用變量并不需要了解變量在計(jì)算機(jī)內(nèi)存中的地址,只要通過變量名引用變量就可以查看或更改變量的值。在 VBScript 中只有一個(gè)基本數(shù)據(jù)類型,即 Variant(不定型數(shù)據(jù)類型),因此所有變量的數(shù)據(jù)類型都是 Variant。,變量的命名約定,變量命名必須遵循 VBScri

10、pt 的標(biāo)準(zhǔn)命名規(guī)則。變量命名必須遵循: 第一個(gè)字符必須是字母。 不能包含嵌入的句點(diǎn)。 長(zhǎng)度不能超過 255 個(gè)字符。 在被聲明的作用域內(nèi)必須唯一。 名字不能與關(guān)鍵字同名。 變量名稱不區(qū)分大小寫。,變量的聲明,聲明變量的一種方式是使用 Dim 語(yǔ)句在腳本中顯式聲明變量。例如: Dim DegreesFahrenheit 聲明多個(gè)變量時(shí),使用逗號(hào)分隔變量。例如: Dim Top, Bottom, Left, Right 另一種方式是通過直接在腳本中使用變量名這一簡(jiǎn)單方式隱式聲明變量。 這通常不是一個(gè)好習(xí)慣,因?yàn)檫@樣有時(shí)會(huì)由于變量名被拼錯(cuò)而導(dǎo)致在運(yùn)行腳本時(shí)出現(xiàn)意外的結(jié)果。,強(qiáng)制顯示聲明變量,最好使

11、用 Option Explicit 語(yǔ)句顯式聲明所有變量,并將其作為腳本的第一條語(yǔ)句。 例如: 為了避免隱式聲明時(shí)寫錯(cuò)變量名引起的問題,一旦使用強(qiáng)制顯示聲明,則所用變量必須先定義聲明,再使用。,變量的作用域與存活期,變量的作用域由聲明它的位置決定。如果在過程中聲明變量,則只有該過程中的代碼可以訪問或更改變量值,此時(shí)變量具有局部作用域并被稱為過程級(jí)變量。如果在過程之外聲明變量,則該變量可以被腳本中所有過程所識(shí)別,稱為 Script 級(jí)變量,具有腳本級(jí)作用域。 變量存在的時(shí)間稱為存活期。Script 級(jí)變量的存活期從被聲明的一刻起,直到腳本運(yùn)行結(jié)束。對(duì)于過程級(jí)變量,其存活期僅是該過程運(yùn)行的時(shí)間,該

12、過程結(jié)束后,變量隨之消失。在執(zhí)行過程時(shí),局部變量是理想的臨時(shí)存儲(chǔ)空間。可以在不同過程中使用同名的局部變量,這是因?yàn)槊總€(gè)局部變量只被聲明它的過程識(shí)別。,如果在過程中沒有生命變量而直接使用變量,有可能無(wú)意中修改腳本級(jí)變量的值。 因此要養(yǎng)成顯示生命變量的習(xí)慣。,3. 2 VBScript腳本語(yǔ)言,3. 2. 7 數(shù)組 1靜態(tài)數(shù)組 靜態(tài)數(shù)組可分為一維數(shù)組、二維數(shù)組或多維數(shù)組。數(shù)組的維數(shù)和大小由數(shù)組名之后緊跟的括號(hào)中的數(shù)字的個(gè)數(shù)和數(shù)值的大小來決定。靜態(tài)數(shù)組的大小在運(yùn)行時(shí)不可改變。它是在編譯時(shí)開辟內(nèi)存區(qū)的。 2動(dòng)態(tài)數(shù)組 動(dòng)態(tài)數(shù)組是運(yùn)行時(shí)大小可變的數(shù)組。當(dāng)程序沒有運(yùn)行時(shí),動(dòng)態(tài)數(shù)組不占內(nèi)存,在程序運(yùn)行時(shí)才開辟

13、內(nèi)存區(qū)。,vbscript的數(shù)組,有時(shí)候,將多個(gè)相關(guān)值賦給一個(gè)變量更為方便,因此可以創(chuàng)建包含一系列值的變量,稱為數(shù)組變量。數(shù)組變量和標(biāo)量變量是以相同的方式聲明的,唯一的區(qū)別是聲明數(shù)組變量時(shí)變量名后面帶有括號(hào) ( )。 格式為:Dim 數(shù)組名()。 下例聲明了一個(gè)包含 11 個(gè)元素的一維數(shù)組: Dim A(10) 在使用數(shù)組之前一定要先聲明名稱,這是和普通的變量不同的地方。 雖然括號(hào)中顯示的數(shù)字是 10,但由于在 VBScript 中所有數(shù)組都是基于 0 的,所以這個(gè)數(shù)組實(shí)際上包含 11 個(gè)元素。,數(shù)組的幾個(gè)特點(diǎn): 使用數(shù)組時(shí)先進(jìn)行定義,然后再使用; 數(shù)組下標(biāo)的下界一律從0開始; 一個(gè)數(shù)組中可以

14、含有各類的數(shù)組元素。,在數(shù)組中使用索引為數(shù)組的每個(gè)元素賦值。從 0 到 10,將數(shù)據(jù)賦給數(shù)組的元素,如下所示: A(0) = 256 . . . A(10) = 55 數(shù)組并不僅限于一維。數(shù)組的維數(shù)最大可以為 60(盡管大多數(shù)人不能理解超過 3 或 4 的維數(shù))。聲明多維數(shù)組時(shí)用逗號(hào)分隔括號(hào)中每個(gè)表示數(shù)組大小的數(shù)字。在下例中,MyTable 變量是一個(gè)有 6 行和 11 列的二維數(shù)組: Dim MyTable(5, 10) 在二維數(shù)組中,括號(hào)中第一個(gè)數(shù)字表示行的數(shù)目,第二個(gè)數(shù)字表示列的數(shù)目。,也可以聲明動(dòng)態(tài)數(shù)組,即在運(yùn)行腳本時(shí)大小發(fā)生變化的數(shù)組。對(duì)數(shù)組的最初聲明使用 Dim 語(yǔ)句或 ReDim

15、 語(yǔ)句。但是對(duì)于動(dòng)態(tài)數(shù)組,括號(hào)中不包含任何數(shù)字。 格式為:Redim 數(shù)組名(n)。 例如:Dim MyArray() Redim MyArry(7),要使用動(dòng)態(tài)數(shù)組,必須隨后使用 ReDim 確定維數(shù)和每一維的大小。在上例中,ReDim 將動(dòng)態(tài)數(shù)組的初始大小設(shè)置為 7,而后面的 ReDim 語(yǔ)句將數(shù)組的大小重新調(diào)整為 30,則在重新定義之前的數(shù)據(jù)將全部消失。若要保留以前的數(shù)據(jù),則同時(shí)使用 Preserve 關(guān)鍵字,這樣在重新調(diào)整大小時(shí)保留數(shù)組的內(nèi)容。 ReDim MyArray(25) . . . ReDim Preserve MyArray(30) 重新調(diào)整動(dòng)態(tài)數(shù)組大小的次數(shù)是沒有任何限制

16、的,將數(shù)組的大小調(diào)小時(shí),將會(huì)丟失被刪除元素的數(shù)據(jù)。,3. 2 VBScript腳本語(yǔ)言,3. 2. 8 運(yùn)算 1算術(shù)運(yùn)算 2連接運(yùn)算 3關(guān)系運(yùn)算 4邏輯運(yùn)算 5運(yùn)算符的優(yōu)先順序,vbscript的運(yùn)算符,字符串連接符:一般用&,&:用于字符串連接,可以強(qiáng)制性地將兩個(gè)任意類型的表達(dá)式作字符串連接,而+則不能。 +:可以將兩個(gè)字符串進(jìn)行連接,但參與操作的必須是字符串。如果一個(gè)是非數(shù)字字符串,一個(gè)是數(shù)字則會(huì)出錯(cuò)。,運(yùn)算符的優(yōu)先級(jí),算術(shù)運(yùn)算符連接運(yùn)算符關(guān)系運(yùn)算符邏輯運(yùn)算符,3. 2 VBScript腳本語(yǔ)言,3. 2. 9 控制結(jié)構(gòu) 1選擇結(jié)構(gòu) (1)單行結(jié)構(gòu) (2)塊結(jié)構(gòu) 2多分支結(jié)構(gòu) 3循環(huán)結(jié)構(gòu)

17、(1)For循環(huán) (2)Do循環(huán) (3)While循環(huán),3. 2 VBScript腳本語(yǔ)言,3. 2. 10 過程 1Sub過程 2函數(shù),本章首頁(yè),3. 3 VBScript常用函數(shù),3. 3. 1 MsgBox函數(shù) 函數(shù)的一般格式如下所示: MsgBox(prompt, buttons , title , helpfile, context),3. 3 VBScript常用函數(shù),3. 3. 2 InputBox函數(shù) 函數(shù)的一般格式如下所示: InputBox(prompt, title , default , xpos , ypos , helpfile, context),3. 3 VBS

18、cript常用函數(shù),3. 3. 3 數(shù)學(xué)函數(shù) 求平方根函數(shù)(Sqr) 求絕對(duì)值函數(shù)(Abs) 指數(shù)函數(shù)(Exp) 對(duì)數(shù)函數(shù)(Log) 符號(hào)函數(shù)(Sgn) 三角函數(shù),3. 3 VBScript常用函數(shù),3. 3. 4 字符串函數(shù) 空格函數(shù) Space(n) 刪除空白字符函數(shù) Trim(字符串) 字符串長(zhǎng)度測(cè)試函數(shù) Len(字符串|變量名) 字符串截取函數(shù) 字母大小寫轉(zhuǎn)換函數(shù) 字母串匹配函數(shù),3. 3 VBScript常用函數(shù),3. 3. 5 日期和時(shí)間函數(shù) 日期函數(shù),包括: Year(Now):返回當(dāng)前系統(tǒng)的年份 Month(Now):返回當(dāng)前系統(tǒng)的月份 Day(Now):返回當(dāng)前系統(tǒng)的日期 WeekDay(Now,n):返回當(dāng)前系統(tǒng)的星期 時(shí)間函數(shù),包括: Hour(Now):返回當(dāng)前系統(tǒng)的小時(shí)(0-23) Minute(Now):返回當(dāng)前系統(tǒng)的分鐘(0-59) Second(Now):返回當(dāng)前系統(tǒng)的秒(0-59),3. 3

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論