visual basic Script

  好像是以个老掉牙的服务器端脚本语言,低版本的IE浏览器支持在浏览器里执行

几个特点

1. 大小写不敏感

2.在服务器端 inputBox, msgBox不被支持

3. 在服务器端 以 <%%> 包裹vbs的代码 与 html混编

4. 使用单引号 ' 注释

5. 插入到html页面

<script type="text/vbscript">
....
</script>

 6. 变量命名 最好大驼峰

 7. 标准嵌套 缩进4格、 注释缩进1格

一、数据类型

  VBScript有唯一的数据类型   Variant,

  Variant类型有多个子类型

Empty, Null, Boolean, Byte, Integer, Currency, Long, 
Single, Double, Date, String, Object, Error

  VarType获取子类型     []内为返回值

Empty:[] '未初始化的Variant 数字上下文则为0, 字符串上下文则为 "";

Null:[] '没有任何有效数据;

Integer:[] '-32768 - 32767之间的整数;

Long:[] '-2147483648 - 2147483647 整数

Single:[] '包含单精度浮点数

Double:[] '包含双精度浮点数

Currency:[] '-922337203685477.5805 - 922337203685477.5807

Date:[] '包含表示日期的数字

String:[] '包含边长字符串,最长可20亿个字符

Object:[] '包含对象

Error:[] '包含错误号

Boolean:[] 'true, false;

Byte:[] '0 - 255 整数;

Array:[] ': 数组

二、变量

  在vbscript中的局部变量叫做(本地变量),全局变量叫做(script变量),局部变量在做用域内有效,当函数执行完释放。  与js基本相同

1. 变量声明

  声明的方式有 Dim 、 ReDim、 Public、 Private  

注意

  在VBScript中 以上声明不能直接赋值的、声明多个变量使用 逗号 隔开 且在作用域内必须唯一

Dim Top,Left
Left = "zuo"
Right = "you"

  隐式声明

  与js相似 未定义就是用的变量,会成为全局变量

2. 常量声明

  Const  可以直接赋值

Const Age = 

3. 数组  (没用过数组)

  声明一维数组

dim name()    '创建一个3个变量的  一维数组
name() = "weibin" '数组第0位 赋值 "weibin"
name() = "jiahang"
name() = "yangming"

  声明二维数组

Dim Arr(,) ' 创建了一个 6行2列的二维数组
Arr(, ) = '00'
Arr(, ) = '01'
....
....

三 、 运算符

求幂: ^
负号: -
乘号: *
除号: /
整除:\
求余: Mod
加号: +
减号: -
字符串拼接: &
等于: =
不等于: <>
大于:>
小于: <
大于等于: >=
小于等于: <=
对象引用比较: Is
逻辑非: Not
逻辑与: And
逻辑或: Or
逻辑异或: Xor
逻辑等价: Eqv
逻辑隐含:Imp

四、 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 =  Then
MsgBox "i=10 msg out!"
'....
'....
End If
'Then执行多行代码时结尾要用 end If 表示结束

2. If Then Else

If I =  Then
MsgBox "I = 10 !"
ElseIf I = 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

六、 循环语句

  1. For ... Next

For i =  to  Step
......
Next
  Next 的步长默认为1,默认步长为1时可不写Step,
  当要更改步长的时候则需要 设置 Step 且 step 可以为负数

  2. for each

dim names()
name() = "weibin"
name() = "yangming"
name() = "wujiamei" for each x in names
document.write(x & '<br/>')
next

  3. do while ...loop

dim i
i =
do while <
document.write(i & "<br>"")
i = i +
loop

  4. do until

Sub doUntil()
dim i, times
i =
times =
do until i =
i = i +
times = times +
loop
msgbox"循环了" & times & "次!"
End Sub
doUntil '调用sub

七、 IE中的VBScript

  1.绑定事件

  定义 name/id _ 事件类型 的 过程 就会给与 name/id 相对应的DOM绑定事件, 且事件基本和js相同
<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. 获取表单值

  document.forms("id/name")* 获取form表单对象,
<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=
height=
align=left
>
<PARAM NAME="Angle" VALUE="">
<PARAM NAME="Alignment" VALUE="">
<PARAM NAME="BackStyle" VALUE="">
</OBJECT>

VBScript(一)的更多相关文章

  1. 第 3 章 VBScript流程控制

    学习导航 if...then...else...end if select case...select end for...next do while ... while wend 3.1 认识流程控 ...

  2. 第 2 章 VBScript基本概念

    学习导航 VBScript 基本知识 变量.常量.数组 算术.逻辑.比较 运算符 2.1 VBScript是什么 VBScript程序语言是Microsoft公司VB(Visual Basic)程序语 ...

  3. VBScript使用CDO.Message发送邮件

    Const Email_From = "from@163.com" Const Password = "password" Const Email_To = & ...

  4. vbscript调用WMI一键式式发布网站

    作为.net开发,在window环境下,不得不熟悉些脚本语言,来减轻些日常开发中所遇到的一些繁杂的事情,比如自动发布网站,自动发布网站等等. WMI windows管理程序接口,可用各种与语言调用,方 ...

  5. ITF Demo代码(用VBScript构建的接口测试框架)

    ITF Demo代码(用VBScript构建的接口测试框架) http://blog.csdn.net/testing_is_believing/article/details/20872629

  6. VBScript [ 译 ]

    VBScript ( Visual Basic Scripting Edition) 使用COM 来和宿主环境交互.从Microsoft Windows 98 开始的所有的微软桌面操作系统的relea ...

  7. ASP测试代码: <% response.write("helloworld,vbscript!") %>

    ASP测试代码: <% response.write("helloworld,vbscript!") %>

  8. 在C#中调用VBScript和JavaScript等脚本的实现

    在C#中调用VBScript.JavaScript等脚本的实现 作者:郑佐 2004-04-26 以前在做工作流(workflow)项目的时候,里面有一项就是在用户制定流程定义时可以编写脚本来控制活动 ...

  9. VBScript 函数

    Date/Time 函数 Conversion 函数 Format 函数 Math 函数 Array 函数 String 函数 其他函数 Date/Time 函数 函数 描述 CDate 把一个有效的 ...

  10. VBSCRIPT事件绑定(隐式)

    很多新版的浏览器都开始不支持VBSCRIPT 所以系统开始不断地有script错误,开始比较多地接触VBSCRIPT vbscript 和javascript 事件绑定的类似方法为 vbscript: ...

随机推荐

  1. lstat函数的使用【学习笔记】

    通过lstat函数获取文件的类型的代码如下. #include "apue.h" int main(int argc,char *argv[]) { int i; struct s ...

  2. jquery清空div里所有input输入框的值

    $("#divId input").val("");

  3. Python小练习_将数据库中表数据存到redis里

    # ##练习:将xxx数据库中my_user表中数据存到redis里面# 分析: pymysql.json.redis# 1.连接数据库,查到数据库里面所有的数据,游标类型要用pymysql.curs ...

  4. poj 3461 Oulipo(kmp统计子串出现次数)

    题意:统计子串出现在主串中的次数 思路:典型kmp #include<iostream> #include<stdio.h> #include<string.h> ...

  5. 「网络流24题」「LuoguP4014」 分配问题

    Description 有 n 件工作要分配给 n 个人做.第 i 个人做第 j 件工作产生的效益为 cij.试设计一个将 n 件工作分配给 n 个人做的分配方案,使产生的总效益最大. Input 文 ...

  6. Barn Repair

    链接 分析:我们不断统计相邻两个元素之间的差值,按照差值从大到小排序,在进行贪心即可 /* PROB:barn1 ID:wanghan LANG:C++ */ #include "iostr ...

  7. Linux 开机引导和启动过程详解

    你是否曾经对操作系统为何能够执行应用程序而感到疑惑?那么本文将为你揭开操作系统引导与启动的面纱. 理解操作系统开机引导和启动过程对于配置操作系统和解决相关启动问题是至关重要的.该文章陈述了 GRUB2 ...

  8. VC将同一份代码同时编译为Dll和Exe的方法

    开发中经常遇到这样的情况,需要开发一个某某功能的接口Dll,但是Dll不能直接调试,你至少需要一个Loader 但是Loader和Dll本身不在同一个工程里,虽然都在本机的话并不影响源码级调试,但是总 ...

  9. 【207】WinForm Chart类

    目录: 在工具箱中找到 Chart 控件并使用 设置 Chart 属性 代码中设置属性 属性中设置属性 Chart 类说明 ChartAreas ChartAreaCollection 类 Chart ...

  10. oracle 查看表是否存在、包含某字段的表、表是否包含字段

    表是否存在: select count(*) from user_tables where table_name = #{tablename} 包含某个字段的表 select * from user_ ...