web程序設(shè)計(jì)課件CH3-vbscript_第1頁(yè)
web程序設(shè)計(jì)課件CH3-vbscript_第2頁(yè)
web程序設(shè)計(jì)課件CH3-vbscript_第3頁(yè)
web程序設(shè)計(jì)課件CH3-vbscript_第4頁(yè)
web程序設(shè)計(jì)課件CH3-vbscript_第5頁(yè)
已閱讀5頁(yè),還剩67頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Web 程序設(shè)計(jì)第 3 章VBScript腳本語(yǔ)言Web 程序設(shè)計(jì)VBScript腳本語(yǔ)言目標(biāo)VBScript的數(shù)據(jù)類型 變量和常量,運(yùn)算符用戶交互函數(shù)和過(guò)程的使用流程控制結(jié)構(gòu)創(chuàng)建VBScript過(guò)程使用VBScript內(nèi)置函數(shù)重點(diǎn): 流程控制,子過(guò)程和函數(shù)過(guò)程2目標(biāo)VBScript的數(shù)據(jù)類型 23.1 腳本語(yǔ)言概念腳本(script)語(yǔ)言的概念源于Unix系統(tǒng),在Unix系統(tǒng)中,將主要以行命令組成的命令集稱為Shell腳本程序。常用腳本語(yǔ)言有:JavaScript、VbScript、和用于編寫(xiě)CGI腳本的Perl,Shell Script 等。腳本語(yǔ)言分為客戶端腳本語(yǔ)言和服務(wù)器端腳本語(yǔ)言,前

2、者在客戶端執(zhí)行,后者在服務(wù)器端執(zhí)行??蛻舳四J(rèn)腳本語(yǔ)言為JavaScript,服務(wù)器端默認(rèn)的腳本語(yǔ)言為VbScript。使用客戶端腳本可以:為用戶提供交互、動(dòng)態(tài)修改內(nèi)容、檢驗(yàn)數(shù)據(jù)、集成33.1 腳本語(yǔ)言概念腳本(script)語(yǔ)言的概念源于UniVBScript語(yǔ)言VBScript語(yǔ)言是一種與Visual Basic相類似的程序設(shè)計(jì)語(yǔ)言,與Visual Basic語(yǔ)法基本相同,但功能上限制比較多; VBScript與JavaScript一樣,是嵌入于HTML中的,可以設(shè)計(jì)出生動(dòng)活潑、互動(dòng)的Web pages和Web-based應(yīng)用程序 ;VBScript可以在客戶端和服務(wù)器端執(zhí)行; VBScr

3、ipt是面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,在VBScript的服務(wù)器端程序中,ASP對(duì)象很重要。4VBScript語(yǔ)言VBScript語(yǔ)言是一種與Visual3.2 在網(wǎng)頁(yè)中嵌入VBScript代碼的方法 動(dòng)態(tài)網(wǎng)頁(yè)示例 script代碼塊,默認(rèn)由客戶瀏覽器執(zhí)行 !- document.write 歡迎您學(xué)習(xí)VBscript & - 圖3-1 動(dòng)態(tài)網(wǎng)頁(yè)瀏覽結(jié)果 53.2 在網(wǎng)頁(yè)中嵌入VBScript代碼的方法 在網(wǎng)頁(yè)中嵌入VBScript代碼的方法 說(shuō)明:(1)標(biāo)記的作用是嵌入VBScript代碼。該標(biāo)記的一般格式如下: VBScript代碼序列 標(biāo)記可以出現(xiàn)在HTML文檔的任何地方(body或head部

4、分之中),但最好將所有的一般目的的腳本代碼放在head部分中,使所有腳本代碼集中放置。這樣可以確保在body部分調(diào)用代碼之前所有腳本代碼都被讀取并解釋。 一般將標(biāo)記中的代碼塊放在HTML的注釋符號(hào)“”之間。(2)網(wǎng)頁(yè)代碼中的標(biāo)記“”的作用是嵌入ASP代碼,可以根據(jù)需要在其中編寫(xiě)VBScript腳本程序。注意:“”之間的代碼將由服務(wù)器解釋執(zhí)行。 6在網(wǎng)頁(yè)中嵌入VBScript代碼的方法 說(shuō)明:63.3 VBScript語(yǔ)言的寫(xiě)書(shū)規(guī)則 (1)程序代碼中不區(qū)分字母的大小寫(xiě);(2)一行可以寫(xiě)多條語(yǔ)句,語(yǔ)句之間用“:”分隔;(3)一條語(yǔ)句也可以寫(xiě)在若干行上,但需在每行末尾加上續(xù)行標(biāo)記空格和下劃線“ _”

5、;(4)一行的長(zhǎng)度不得超過(guò)255個(gè)字符;(5)在代碼中可合理地使用注釋,注意以“”開(kāi)頭,可以自占一行,也可以直接出現(xiàn)在語(yǔ)句的后面。73.3 VBScript語(yǔ)言的寫(xiě)書(shū)規(guī)則 (1)程序代碼中不區(qū)3.4 數(shù)據(jù)類型可變型數(shù)據(jù)類型Variant 由各種子數(shù)據(jù)類型構(gòu)成可存儲(chǔ)任何子類型的值支持自動(dòng)轉(zhuǎn)換各種子類型83.4 數(shù)據(jù)類型可變型數(shù)據(jù)類型Variant 83.5 變量和常量一、變量定義程序執(zhí)行時(shí)可以改變的量語(yǔ)法命名規(guī)則Dim x Dim a, b, Left, Right (1) 變量名只能由字母、數(shù)字和下劃線組成。(2) 變量名的第一個(gè)字符必須是字母。(3) 變量名中間不能有空格。(4) 變量名中不

6、能包含小數(shù)點(diǎn)。(5) 變量名的字符數(shù)目不得超過(guò)255個(gè)字符。(6) 不能用VB的關(guān)鍵字作變量名。 (7) 變量名不能與過(guò)程名和符號(hào)常量名相同。(8) 變量名在同一個(gè)作用域內(nèi)必須是惟一的。93.5 變量和常量一、變量Dim x (1) 變量名只能由3.5 變量和常量二、常量定義程序執(zhí)行時(shí)保持不變的數(shù)據(jù)分類直接常量符號(hào)常量(內(nèi)部常量、用戶聲明常量)Const mystring=這是一個(gè)常量 Const myage=100Const CutoffDate =#3-16-2003 13:20:15# 103.5 變量和常量二、常量Const mystring=這例1 求圓的周長(zhǎng)。常量 const Pi

7、 = 3.14 定義圓周率為常量 dim r,length r = 3 length = 2* Pi*r MsgBox “圓的半徑為:” & r & vbCrLf & “圓的周長(zhǎng)為:” & length11例1 求圓的周長(zhǎng)。113.5 變量和常量三、數(shù)組定義一組相同類型的變量的集合分類靜態(tài)數(shù)組動(dòng)態(tài)數(shù)組Dim 數(shù)組名(最大下標(biāo)) Dim array1(2)Dim array2(2,3) Dim 數(shù)組名( ) Dim myarray( )Redim preserve 數(shù)組名(新的最大下標(biāo)值)Dim datanum()Redim datanum(10) 123.5 變量和常量三、數(shù)組Dim 數(shù)組名(

8、最大下標(biāo)) Dim3.5 變量和常量三、數(shù)組示例 Dim A(10) A(0)=256 A(1)=324 A(10)=55 Document.write(A(0) Document.write(“”) Document.write(A(9) Document.write(“”) Document.write(A(10) Dim A( ) Redim A(25) A(0)=256 A(1)=324 Redim Preserve A(30) A(30)=30 Document.write(A(0) Document.write(“”) Document.write(A(1) Document.wr

9、ite(“”) Document.write(A(30) 用于向當(dāng)前網(wǎng)頁(yè)輸出內(nèi)容,其內(nèi)容可以是純文本,也可以是文本與HTML標(biāo)記的組合 133.5 變量和常量三、數(shù)組script language=例2 動(dòng)態(tài)數(shù)組示例。14例2 動(dòng)態(tài)數(shù)組示例。143.6 運(yùn)算符一、算術(shù)運(yùn)算符:+、-、*、/、(整除)、Mod(取余)、(乘方)二、字符串運(yùn)算符“&”與“+”的區(qū)別 三、比較運(yùn)算符: = 、 、 、 =“計(jì)算機(jī)” & 1234 結(jié)果為”計(jì)算機(jī)1234”“22” & 1234 結(jié)果為”221234” 22 + 1234 結(jié)果為1256“計(jì)算機(jī)” + 1234 出錯(cuò)153.6 運(yùn)算符一、算術(shù)運(yùn)算符:+、

10、-、*、/、(整除)、M3.6 運(yùn)算符運(yùn)算符含義示例描述And與A And B當(dāng)A和B同時(shí)為True時(shí),結(jié)果為True,否則為FalseOr或A Or B 只要A或B之一為True,結(jié)果為True,否則為FalseNot非Not A 若A為True,則結(jié)果為False;若A為False,則結(jié)果為TrueXor異或A Xor B 若A和B取值相同時(shí),結(jié)果為False,否則結(jié)果為TrueImp蘊(yùn)涵A Imp B A為True且B為False時(shí),結(jié)果為False,否則結(jié)果為TrueEqv等價(jià)A Eqv B A和B同時(shí)為True或同時(shí)為False時(shí),結(jié)果為True,否則結(jié)果為False四、邏輯運(yùn)算符1

11、63.6 運(yùn)算符運(yùn)算符含義示例描述And與A And B當(dāng)A和3.7 用戶交互函數(shù)和過(guò)程一、InputBox函數(shù)作用產(chǎn)生一個(gè)輸入框,等待用戶輸入文本或選擇一個(gè)按鈕,當(dāng)用戶單擊確定按鈕或按回車鍵,函數(shù)返回文本框中輸入的內(nèi)容。 語(yǔ)法 InputBox(“提示”,“標(biāo)題” ,“缺省值” ,“x坐標(biāo)位置” ,“y坐標(biāo)位置”) useraccount= InputBox(請(qǐng)輸入您的賬號(hào),賬號(hào)輸入框,”A31007”) 173.7 用戶交互函數(shù)和過(guò)程一、InputBox函數(shù)Input3.7 用戶交互函數(shù)和過(guò)程二、MsgBox函數(shù)和MsgBox過(guò)程作用產(chǎn)生一個(gè)信息框,等待用戶選擇一個(gè)按鈕。MsgBox函數(shù)會(huì)

12、返回一個(gè)值指示用戶選擇的按鈕,若不需返回值,則可用MsgBox過(guò)程。 語(yǔ)法 “圖標(biāo)名稱”和“按鈕名稱”的含義MsgBox函數(shù):MsgBox(“顯示內(nèi)容”,圖標(biāo)名稱|按鈕名稱,“標(biāo)題”)MsgBox過(guò)程:MsgBox “顯示內(nèi)容”,圖標(biāo)名稱|按鈕名稱,“標(biāo)題”183.7 用戶交互函數(shù)和過(guò)程二、MsgBox函數(shù)和MsgBox3.7 用戶交互函數(shù)和過(guò)程三、例4 利用InputBox函數(shù)提供一個(gè)輸入框輸入姓名,然后用MsgBox顯示輸入的姓名。用戶交互函數(shù)的應(yīng)用 dim strnamestrname=InputBox(請(qǐng)輸入您的姓名,姓名輸入框“Msgbox 您的姓名是 & strname,顯示姓名1

13、93.7 用戶交互函數(shù)和過(guò)程三、例4 利用InputBox四、例5 判斷輸入帳號(hào)用戶交互函數(shù)的應(yīng)用 dim account,i Do account=InputBox(請(qǐng)輸入賬號(hào),輸入賬號(hào)對(duì)話框) i=Msgbox(你的賬號(hào)是:& account &vbCrLf &是否重輸?,vbYesNo+VbExclamation,顯示賬號(hào)) Loop until i=vbNo 20四、例5 判斷輸入帳號(hào)203.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)If語(yǔ)句單分支結(jié)構(gòu)的If語(yǔ)句雙分支結(jié)構(gòu)的If語(yǔ)句多分支結(jié)構(gòu)的If語(yǔ)句Select Case語(yǔ)句語(yǔ)法:If 表達(dá)式 Then 語(yǔ)句塊End If或:If 表達(dá)式 Then

14、 語(yǔ)句 213.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)語(yǔ)法:21例6 改變網(wǎng)頁(yè)背景顏色 單分支結(jié)構(gòu)的If語(yǔ)句 If time=#0:0:0# and time=#12:0:0# Then document.write End If上午和下午網(wǎng)頁(yè)的背景顏色不同22例6 改變網(wǎng)頁(yè)背景顏色 223.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)If語(yǔ)句單分支結(jié)構(gòu)的If語(yǔ)句雙分支結(jié)構(gòu)的If語(yǔ)句多分支結(jié)構(gòu)的If語(yǔ)句Select Case語(yǔ)句語(yǔ)法:If 表達(dá)式 Then 語(yǔ)句塊Else 語(yǔ)句塊End If233.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)語(yǔ)法:23例7 判斷是否輸入姓名。雙分支結(jié)構(gòu)的If語(yǔ)句dim name, messagenam

15、e = InputBox(請(qǐng)輸入您的姓名:)If name= Then message = 您未輸入您的姓名! Else message = 您的姓名是: & name & 。End IFMsgBox message24例7 判斷是否輸入姓名。243.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)If語(yǔ)句單分支結(jié)構(gòu)的If語(yǔ)句雙分支結(jié)構(gòu)的If語(yǔ)句多分支結(jié)構(gòu)的If語(yǔ)句Select Case語(yǔ)句語(yǔ)法:If 表達(dá)式1 Then語(yǔ)句塊1ElseIf 表達(dá)式2 Then語(yǔ)句塊2 Else語(yǔ)句塊nEnd If 253.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)語(yǔ)法:25例8 當(dāng)用戶瀏覽網(wǎng)頁(yè)時(shí),能根據(jù)瀏覽時(shí)間的不同顯示不同的問(wèn)候語(yǔ):26例8

16、 當(dāng)用戶瀏覽網(wǎng)頁(yè)時(shí),能根據(jù)瀏覽時(shí)間的不同顯示不同的問(wèn)3.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)If語(yǔ)句單分支結(jié)構(gòu)的If語(yǔ)句雙分支結(jié)構(gòu)的If語(yǔ)句多分支結(jié)構(gòu)的If語(yǔ)句Select Case語(yǔ)句語(yǔ)法:Select Case 表達(dá)式 Case 值1 語(yǔ)句塊1Case 值2 語(yǔ)句塊2Case Else 語(yǔ)句塊nEnd Select273.8 流程控制結(jié)構(gòu)一、選擇結(jié)構(gòu)語(yǔ)法:27例9 根據(jù)成績(jī)顯示不同的字句。 Select Case語(yǔ)句 option explicitdim score, messagescore = InputBox(“請(qǐng)輸入成績(jī):”) 等待用戶輸入成績(jī)Select Case True case S

17、core 60 message=非常遺憾,您沒(méi)有通過(guò)考試! case Score 70 message=您通過(guò)了考試,不過(guò)成績(jī)一般噢! case Score 90 message=您通過(guò)了考試,成績(jī)還不錯(cuò)! case Else message=恭喜您,取得了好成績(jī)! End SelectMsgBox message 28例9 根據(jù)成績(jī)顯示不同的字句。 3.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)計(jì)數(shù)循環(huán)語(yǔ)句ForNext 適用用于循環(huán)次數(shù)確定的循環(huán)結(jié)構(gòu)語(yǔ)法 功能執(zhí)行循環(huán)體中的程序代碼指定次數(shù),在循環(huán)中使用循環(huán)變量,該變量值隨每一次循環(huán)增加步長(zhǎng),步長(zhǎng)缺省為1。 For 循環(huán)變量=初始值 to終止值 Step

18、 步長(zhǎng)程序代碼Next 293.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)For 循環(huán)變量=初始值 t例10 實(shí)現(xiàn)求1到100的和。 for i=1 to 100 sum=sum+i next例11 輸出九九乘法表。 30例10 實(shí)現(xiàn)求1到100的和。303.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)數(shù)組循環(huán)語(yǔ)句For EachNext 適用常用于數(shù)組或?qū)ο蠹?語(yǔ)法 功能用“變量名”代替數(shù)組中的每一個(gè)元素或?qū)ο蠹现械拿恳豁?xiàng),對(duì)于數(shù)組中的每一個(gè)元素或?qū)ο蠹现械拿恳豁?xiàng)重復(fù)執(zhí)行循環(huán)體中的程序代碼。 For Each 變量名 In 數(shù)組名或?qū)ο蠹?程序代碼Next 313.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)For Each 變

19、量名 例13 用For EachNext循環(huán)輸出數(shù)組中各元素的值。 dim score,i,message score=Array(97, 83, 68, 90, 70,54) 創(chuàng)建一個(gè)有6個(gè)元素的成績(jī)數(shù)組 用循環(huán)輸出每個(gè)成績(jī) For Each i In score 此時(shí)數(shù)組只需寫(xiě)數(shù)組名,不必須加括號(hào) message=message & i & chr(13) & chr(10) next MsgBox message 32例13 用For EachNext循環(huán)輸出數(shù)組中各元素3.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)條件式循環(huán)語(yǔ)句DoLoop適用常用于循環(huán)次數(shù)未知的循環(huán)結(jié)構(gòu) 分類 當(dāng)型DoLoop 直

20、到型 DoLoop 333.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)33當(dāng)型DoLoopDoLoop While執(zhí)行循環(huán)代碼并對(duì)循環(huán)條件進(jìn)行求值, 重復(fù)執(zhí)行直到循環(huán)條件為 FalseDo WhileLoop只有在循環(huán)條件為 True 時(shí)才執(zhí)行循環(huán)代碼,重復(fù)執(zhí)行直到循環(huán)條件為 False如果想在條件表達(dá)式為 True(而不是False)時(shí)才執(zhí)行循環(huán)語(yǔ)句,可使用 While 關(guān)鍵字。 34當(dāng)型DoLoopDoLoop While如果想在條件表達(dá)當(dāng)型DoLoop對(duì)比流程圖循環(huán)條件代碼假真循環(huán)條件代碼真假DoLoop WhileDo While Loop注意都是在循環(huán)條件為假時(shí)退出35當(dāng)型DoLoop對(duì)比流程圖循

21、環(huán)條件代碼假真循環(huán)條件代碼真假直到型DoLoopDoLoop Until執(zhí)行循環(huán)代碼并對(duì)循環(huán)條件進(jìn)行求值, 重復(fù)執(zhí)行直到循環(huán)條件為 True。注意代碼至少會(huì)執(zhí)行一次Do UntilLoop只有在循環(huán)條件為 False 時(shí)才執(zhí)行循環(huán)代碼,重復(fù)執(zhí)行直到循環(huán)條件為 True。循環(huán)結(jié)構(gòu)中的代碼可能一次都不執(zhí)行36直到型DoLoopDoLoop Until36直到型DoLoop對(duì)比流程圖循環(huán)條件代碼假真循環(huán)條件代碼真假DoLoop UntilDo Until Loop注意都是在循環(huán)條件為真時(shí)退出37直到型DoLoop對(duì)比流程圖循環(huán)條件代碼假真循環(huán)條件代碼真例14 用Do Loop循環(huán)語(yǔ)句求1到100的平

22、方和。 DoLoop循環(huán)n=1s=0Do while n=100s=s+n2n=n+1LoopMsgbox 1的平方到100的平方的累加和為: & s38例14 用Do Loop循環(huán)語(yǔ)句求1到100的平方和。3.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)WhileWend循環(huán) 適用常用于循環(huán)次數(shù)未知的循環(huán)結(jié)構(gòu) 語(yǔ)法 功能先判斷表達(dá)式的值,若值為True,則執(zhí)行循環(huán)體中的程序代碼,否則退出循環(huán),執(zhí)行Wend后的語(yǔ)句。 While 表達(dá)式程序代碼Wend393.8 流程控制結(jié)構(gòu)二、循環(huán)結(jié)構(gòu)While 表達(dá)式39例15 用WhileWend循環(huán)語(yǔ)句求1到100的平方和。WhileWend循環(huán)n=1s=0While

23、 n=100s=s+n2n=n+1WendMsgbox 1的平方到100的平方的累加和為: & s40例15 用WhileWend循環(huán)語(yǔ)句求1到100的平方3.9 VBScript過(guò)程定義:過(guò)程是完成某種特定功能的一組獨(dú)立的程序代碼 分類:子過(guò)程和函數(shù)過(guò)程區(qū)別:函數(shù)過(guò)程可以在執(zhí)行結(jié)束的時(shí)候返回一個(gè)值給調(diào)用它的程序,而子過(guò)程不返回值。 413.9 VBScript過(guò)程定義:過(guò)程是完成某種特定功能的一3.9 VBScript過(guò)程一、子過(guò)程例16 子過(guò)程的定義。子過(guò)程 msgbox 現(xiàn)在執(zhí)行子過(guò)程外的語(yǔ)句 Sub a msgbox 現(xiàn)在執(zhí)行子過(guò)程內(nèi)的語(yǔ)句 End Sub423.9 VBScript過(guò)

24、程一、子過(guò)程423.9 VBScript過(guò)程一、子過(guò)程調(diào)用子過(guò)程語(yǔ)法方式一: Call 子過(guò)程名(參數(shù)1,參數(shù)2,)方式二: 子過(guò)程名參數(shù)1,參數(shù)2, 433.9 VBScript過(guò)程一、子過(guò)程方式一:433.9 VBScript過(guò)程一、子過(guò)程調(diào)用子過(guò)程例17 無(wú)參數(shù)子過(guò)程的定義及調(diào)用。無(wú)參數(shù)子過(guò)程的定義及調(diào)用 a msgbox 現(xiàn)在執(zhí)行子過(guò)程外的語(yǔ)句 Sub a msgbox 現(xiàn)在執(zhí)行子過(guò)程內(nèi)的語(yǔ)句 End Sub443.9 VBScript過(guò)程一、子過(guò)程443.9 VBScript過(guò)程一、子過(guò)程調(diào)用子過(guò)程例18 有參數(shù)子過(guò)程的定義及調(diào)用。有參數(shù)子過(guò)程的定義及調(diào)用 dim a,b,c a=1

25、5 b=20 c=4 maxnum a,b,c 調(diào)用子過(guò)程 Sub maxnum(x,y,z) 定義子過(guò)程 dim max if xy then max=x else max=y end if if zmax then max=z msgbox “最大的數(shù)為:” & max End Sub 453.9 VBScript過(guò)程一、子過(guò)程453.9 VBScript過(guò)程一、子過(guò)程終止執(zhí)行子過(guò)程(Exit Sub)例19 子過(guò)程的中止。子過(guò)程的中止 b Sub b document.write “子過(guò)程被中止前” exit sub document.write 子過(guò)程被中止后 該語(yǔ)句不會(huì)執(zhí)行到 End

26、 Sub463.9 VBScript過(guò)程一、子過(guò)程463.9 VBScript過(guò)程二、函數(shù)過(guò)程定義函數(shù)過(guò)程語(yǔ)法調(diào)用函數(shù)過(guò)程直接引用函數(shù)過(guò)程名Function 函數(shù)過(guò)程名(參數(shù)1,參數(shù)2,)程序代碼函數(shù)過(guò)程名=返回值 End Function 473.9 VBScript過(guò)程二、函數(shù)過(guò)程Function 函3.9 VBScript過(guò)程二、函數(shù)過(guò)程例20 函數(shù)過(guò)程的定義及調(diào)用。 dim a,b,c a=15 b=20 c=4 msgbox(“最大數(shù)是:” & maxnum(a,b,c) Function maxnum(x,y,z) dim max if xy then max=x else max

27、=y end if if zmax then max=z maxnum=max End Function483.9 VBScript過(guò)程二、函數(shù)過(guò)程483.9 VBScript過(guò)程三、變量的作用域定義指變量的有效范圍 ,變量的作用域由它聲明或出現(xiàn)的位置決定分類局部變量全局變量 例21 變量作用域示例:局部變量是在過(guò)程內(nèi)部聲明或出現(xiàn)的變量,其作用域僅局限于定義它的過(guò)程,只在該過(guò)程內(nèi)有效,離開(kāi)相應(yīng)過(guò)程,變量會(huì)失效而變?yōu)榭铡?全局變量是在過(guò)程外部聲明或出現(xiàn)的變量,其作用域?yàn)楫?dāng)前整個(gè)ASP網(wǎng)頁(yè),在當(dāng)前網(wǎng)頁(yè)的各個(gè)腳本程序塊內(nèi)有效。 493.9 VBScript過(guò)程三、變量的作用域局部變量是在過(guò)程3.10

28、 VBScript的內(nèi)置函數(shù)一. 字符串函數(shù) 二. 數(shù)學(xué)函數(shù) 三. 轉(zhuǎn)換函數(shù) 四.日期和時(shí)間函數(shù) 五.檢驗(yàn)函數(shù) 六.數(shù)組相關(guān)的函數(shù) 503.10 VBScript的內(nèi)置函數(shù)一. 字符串函數(shù) 503.10 內(nèi)置函數(shù)一. 字符串函數(shù)函數(shù)名語(yǔ)法功能LenLen(str)求字符串str的長(zhǎng)度TrimTrim(str)去掉字符串str兩邊的空格LcaseLcase(str)將大寫(xiě)字母轉(zhuǎn)化為小寫(xiě)字母UcaseUcase(str)將小寫(xiě)字母轉(zhuǎn)化為大寫(xiě)字母LeftLeft(str,n)從字符串str的左邊取n個(gè)字符RightRight(str,n)從字符串str的右邊取n個(gè)字符MidMid(str,n1,n2

29、)從字符串str左邊第n1個(gè)位置開(kāi)始向右取n2個(gè)字符StrcompStrcomp(str1,str2)比較字符串str1和str2的大小。str1大于str2,返回1;str1小于str2,返回-1;相同,返回0。InstrInstr(n,str1,str2,m)在str1字符串中從n位置開(kāi)始搜索str2字符串,返回str2在str1中出現(xiàn)的位置,未找到返回0。m=1,不區(qū)分大小寫(xiě);m=0或省略m,區(qū)分大小寫(xiě)SplitSplit(str,char)將str字符串根據(jù)分隔符char拆分成字符串?dāng)?shù)組,省略char用空格作為分隔符JionJion(a,char)將字符串?dāng)?shù)組a用分隔符char連接成一

30、個(gè)字符串,省略char用空格作為分隔符ReplaceReplace(str,str1,str2)在str字符串中用str2字符串替代str1字符串513.10 內(nèi)置函數(shù)一. 字符串函數(shù)函數(shù)名語(yǔ)法功能LenLen3.10 字符串函數(shù)舉例x=一二三四五六七八九十/一個(gè)漢字長(zhǎng)度為1document.write len(x) & for i=16 to 87/顯示各區(qū)漢字x=for j=1 to 94x=x & & chr(160+i)*256 +160+j) /在Unicode碼中(雙字節(jié)),一個(gè)漢字只占一個(gè)字符位if j mod 20 =0 then x=x & nextdocument.writ

31、e x & next523.10 字符串函數(shù)舉例script language=3.10 內(nèi)置函數(shù)二. 數(shù)學(xué)函數(shù)函數(shù)名語(yǔ)法功能AbsAbs(n)求n的絕對(duì)值SqrSqr(n) 求n的平方根CosCos(n)求n的余弦SinSin(n)求n的正弦LogLog(n)求n以e為底的自然對(duì)數(shù)ExpExp(n)求e的n次冪SgnSgn(n)求n的符號(hào)RndRnd(n)產(chǎn)生一個(gè)01之間的隨機(jī)數(shù)IntInt(n)取n的整數(shù)部分,返回不大于n的最大整數(shù)FixFix(n)取n的整數(shù)部分,小數(shù)部分不四舍五入HexHex(n)將八進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù)OctOct(n)將十進(jìn)制數(shù)轉(zhuǎn)換成八進(jìn)制數(shù)533.10 內(nèi)置函數(shù)二

32、. 數(shù)學(xué)函數(shù)函數(shù)名語(yǔ)法功能AbsAbs(產(chǎn)生隨機(jī)數(shù)例22 產(chǎn)生五個(gè)1100之間的隨機(jī)整數(shù)。Rnd函數(shù)產(chǎn)生5個(gè)1-100的隨機(jī)整數(shù) for i=1 to 5 randomize document.write Int(Rnd*100+1) & next54產(chǎn)生隨機(jī)數(shù)例22 產(chǎn)生五個(gè)1100之間的隨機(jī)整數(shù)。543.10 內(nèi)置函數(shù)三. 轉(zhuǎn)換函數(shù)函數(shù)名語(yǔ)法功能AscAsc(c)將字符c轉(zhuǎn)換成ASCII碼值Chr$Chr$(n) 將ASCII碼值n轉(zhuǎn)換成字符CstrCstr(exp)將exp轉(zhuǎn)換為String類型CdateCdate(exp)將exp轉(zhuǎn)換為Date類型CintCint(exp)將exp轉(zhuǎn)換

33、為Int型ClngClng(exp)將exp轉(zhuǎn)換為L(zhǎng)ong類型CsngCsng(exp)將exp轉(zhuǎn)換為Single類型CdblCdbl(exp)將exp轉(zhuǎn)換為Double類型CboolCbool(exp)將exp轉(zhuǎn)換為Boolean類型553.10 內(nèi)置函數(shù)三. 轉(zhuǎn)換函數(shù)函數(shù)名語(yǔ)法功能AscAsc(3.10 內(nèi)置函數(shù)四.日期和時(shí)間函數(shù)函數(shù)名語(yǔ)法功能DateDate()返回系統(tǒng)日期TimeTime()返回系統(tǒng)時(shí)間NowNow()返回系統(tǒng)日期和時(shí)間DayDay(date)返回給定日期是幾號(hào)MonthMonth(date)返回給定日期的月份YearYear(date)返回給定日期的年份HourHou

34、r(time)返回給定時(shí)間的小時(shí)部分MinuteMinute(time)返回給定時(shí)間的分鐘SecondSecond(time)返回給定時(shí)間的秒鐘MonthNameMonthName(month)返回月份名稱WeekdayWeekday(date)返回給定日期的星期代號(hào)WeekdaynameWeekdayname(weekday)返回星期名稱DatediffDatediff(interval, date1, date2)返回兩個(gè)日期或時(shí)間的間隔DateAddDateAdd(interval,number, date)對(duì)日期添加或減去指定時(shí)間間隔563.10 內(nèi)置函數(shù)四.日期和時(shí)間函數(shù)函數(shù)名語(yǔ)法功

35、能DateD利用日期時(shí)間函數(shù)求日期或時(shí)間例23 日期時(shí)間函數(shù)示例。時(shí)期時(shí)間函數(shù) document.write 現(xiàn)在是: & now() & document.write 今天的日期是: & date() & document.write 現(xiàn)在的時(shí)間是: & time() & document.write 今天是: & year(date)& 年 & month(date) & 月 & day(date) & 日 & document.write 現(xiàn)在是 & hour(now) & 時(shí) & minute(now) & 分 & second(now) & 秒 & document.write 今天

36、的星期代號(hào)是: & weekday(date) & document.write 今天是: & weekdayname(weekday(date) & document.write 到五一節(jié)還有 & datediff(d,date,#2006-5-1#) & 天 & 57利用日期時(shí)間函數(shù)求日期或時(shí)間例23 日期時(shí)間函數(shù)示例。53.10 內(nèi)置函數(shù)五.檢驗(yàn)函數(shù) 函數(shù)名語(yǔ)法功能IsNumericIsNumeric (var)檢查var的值,若是數(shù)字,則返回trueIsDateIsDate(var) 檢查var的值,若是日期,則返回trueIsArrayIsArray(var)檢查var的值,若是數(shù)組

37、,則返回trueIsObjectIsObject(var)檢查var的值,若是對(duì)象,則返回trueIsEmptyIsEmpty(var)檢查var的值,若是empty,則返回trueIsNullIsNull(var)檢查var的值,若是Null,則返回true583.10 內(nèi)置函數(shù)五.檢驗(yàn)函數(shù) 函數(shù)名語(yǔ)法功能IsNumer例24 用IsNumeric函數(shù)判斷一個(gè)變量中的數(shù)據(jù)是否由數(shù)字組成。IsNumeric函數(shù)檢驗(yàn)變量中的值是否數(shù)字 dim myvar myvar=53 mycheck=IsNumeric(myvar) MsgBox mycheck 顯示True myvar=459.95 my

38、check=IsNumeric(myvar) MsgBox mycheck 顯示True myvar=45Help mycheck=IsNumeric(myvar) MsgBox mycheck 顯示False59例24 用IsNumeric函數(shù)判斷一個(gè)變量中的數(shù)據(jù)是否3.10 內(nèi)置函數(shù)六.數(shù)組相關(guān)的函數(shù)函數(shù)名語(yǔ)法功能UboundUbound(a,d)返回?cái)?shù)組a的指定維d的可用最大下標(biāo)LboundLbound(a,d) 返回?cái)?shù)組a的指定維d的可用最小下標(biāo)ArrayArray(arglist)返回一個(gè)數(shù)組,數(shù)組元素為arglist中的值603.10 內(nèi)置函數(shù)六.數(shù)組相關(guān)的函數(shù)函數(shù)名語(yǔ)法功能Ubo

39、un例25 數(shù)組相關(guān)函數(shù)示例。 數(shù)組相關(guān)函數(shù)創(chuàng)建一個(gè)數(shù)組并輸出數(shù)組中的元素 dim myweek, myday myweek = Array(Mon, Tue, Wed, Thu, Fri, Sat, Sun) For i=Lbound(myweek) to Ubound(myweek) document.write myweek( & i & )= & myweek(i) & Next61例25 數(shù)組相關(guān)函數(shù)示例。61JavaScript 有六種數(shù)據(jù)類型。主要的類型有 number、string、object 以及 Boolean 類型,其他兩種類型為 null 和 undefined。變量命名:JavaScript 是一種區(qū)分大小寫(xiě)的語(yǔ)言,因此將一個(gè)變量命名為 computer 和將其命名為 Computer是不一樣的。變量命名規(guī)則: 1.第一個(gè)字符必須是一個(gè)字母(大小寫(xiě)均可)、或一個(gè)下劃線(_)或一個(gè)美元符 ($)。 2.后續(xù)的字符可以是字母、數(shù)字、下劃線或美元符。 3.變量名稱不能是保留字。 補(bǔ)充:了解JavaScript62JavaScript 有六種數(shù)據(jù)類型。補(bǔ)充:了解JavaScJavaScript所提供的語(yǔ)句分為以下幾大類: 1、

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論