visual basic Scripthtml
好像是以個老掉牙的服務器端腳本語言,低版本的IE瀏覽器支持在瀏覽器裏執行數組
幾個特色瀏覽器
1. 大小寫不敏感服務器
2.在服務器端 inputBox, msgBox不被支持函數
3. 在服務器端 以 <%%> 包裹vbs的代碼 與 html混編oop
4. 使用單引號 ' 註釋 spa
5. 插入到html頁面code
<script type="text/vbscript"> .... </script>
6. 變量命名 最好大駝峯orm
7. 標準嵌套 縮進4格、 註釋縮進1格htm
1、數據類型
VBScript有惟一的數據類型 Variant,
Variant類型有多個子類型
Empty, Null, Boolean, Byte, Integer, Currency, Long,
Single, Double, Date, String, Object, Error
VarType獲取子類型 []內爲返回值
Empty:[0] '未初始化的Variant 數字上下文則爲0, 字符串上下文則爲 ""; Null:[1] '沒有任何有效數據; Integer:[2] '-32768 - 32767之間的整數; Long:[3] '-2147483648 - 2147483647 整數 Single:[4] '包含單精度浮點數 Double:[5] '包含雙精度浮點數 Currency:[6] '-922337203685477.5805 - 922337203685477.5807 Date:[7] '包含表示日期的數字 String:[8] '包含邊長字符串,最長可20億個字符 Object:[9] '包含對象 Error:[10] '包含錯誤號 Boolean:[11] 'true, false; Byte:[17] '0 - 255 整數; Array:[8192] ': 數組
2、變量
在vbscript中的局部變量叫作(本地變量),全局變量叫作(script變量),局部變量在作用域內有效,當函數執行完釋放。 與js基本相同
1. 變量聲明
聲明的方式有 Dim 、 ReDim、 Public、 Private
注意
在VBScript中 以上聲明不能直接賦值的、聲明多個變量使用 逗號 隔開 且在做用域內必須惟一
Dim Top,Left Left = "zuo" Right = "you"
隱式聲明
與js類似 未定義就是用的變量,會成爲全局變量
2. 常量聲明
Const 能夠直接賦值
Const Age = 17
3. 數組 (沒用過數組)
聲明一維數組
dim name(2) '建立一個3個變量的 一維數組 name(0) = "weibin" '數組第0位 賦值 "weibin" name(1) = "jiahang" name(2) = "yangming"
聲明二維數組
Dim Arr(5,1) ' 建立了一個 6行2列的二維數組 Arr(0, 0) = '00' Arr(0, 1) = '01' .... ....
三 、 運算符
求冪: ^ 負號: - 乘號: * 除號: / 整除:\ 求餘: Mod 加號: + 減號: - 字符串拼接: & 等於: = 不等於: <> 大於:> 小於: < 大於等於: >= 小於等於: <= 對象引用比較: Is 邏輯非: Not 邏輯與: And 邏輯或: Or 邏輯異或: Xor 邏輯等價: Eqv 邏輯隱含:Imp
4、 VBScript程序
1. 子程序 Sub
Sub MySub () ... End Sub
封裝在 Sub 和 EndSub內, 執行多條操做但不返回值,
調用 使用 函數名加空格加參數 參數以, 分開 或者 call 函數名 (參數1,參數2,...)
2. 函數程序
Function myfun () ... myfun = "some return value" '要在結尾 用自身函數名設置返回值 End function
又返回值,調用時 要用 函數名(參數)
五 、 條件語句
1. If ... Then
If I = 10 Then MsgBox "i=10 msg out!" '.... '.... End If 'Then執行多行代碼時結尾要用 end If 表示結束
2. If Then Else
If I = 10 Then MsgBox "I = 10 !" ElseIf I = 9 then MsgBox "I = 9 !" Else MsgBox "not 10 and not 9! " End If
3.Select Case
Select Case direction Case "up" msgbox "north" Case "right" msgbox "east" Case "left" msgbox "west" Case Else msgbox "south" End select
6、 循環語句
1. For ... Next
For i = 1 to 10 Step 2 ...... Next
2. for each
dim names(2) name(0) = "weibin" name(1) = "yangming" name(2) = "wujiamei" for each x in names document.write(x & '<br/>') next
3. do while ...loop
dim i i = 0 do while 1 < 10 document.write(i & "<br>"") i = i + 1 loop
4. do until
Sub doUntil() dim i, times i = 0 times = 0 do until i = 10 i = i + 1 times = times + 1 loop msgbox"循環了" & times & "次!" End Sub doUntil '調用sub
7、 IE中的VBScript
1.綁定事件
<input type="button" name="btn" value="sayHello!"> <script type="text/vbscript"> sub btn_onclick document.write("hello world!") end sub </script>
另外一種方法 在行間直接 事件=過程
<div onclick='msgbox "hello world!"'>clickMe!</div>
2. 獲取表單值
<form id="formList" onsubmit="getFormData()"> <input type="text" name="inp" id="inpt"> <input type="submit" name="sub" value="send"> </form> <script type="text/vbscript"> sub getFormData dim formList set formList = document.forms("formList") if isnumeric(formList.inpt.value) then document.write("is number") else document.write("is not number") end if end sub </script>
3.建立對象
<OBJECT width=250 height=250 align=left > <PARAM NAME="Angle" VALUE="90"> <PARAM NAME="Alignment" VALUE="4"> <PARAM NAME="BackStyle" VALUE="0"> </OBJECT>