常用vbscript
dim:为一个或多个变量声明并分配存储空间,但不是赋值给变量
变量的赋值:
dim a(10)
a(0)=11
a(1)=13
............
a(10)=260
!:在定义要被redim重新定义的数组,要写成dim( ),括号里不能有变
量个数,等号后面的值可以是字符串,但等号前面括号里的值必为
数字,括号里的是指定数组里的第几个数
[accessmodifier] dim name as (new) datatype
accessmodifier:表示访问级别/2:
public: 无限制,任何代码均可以访问它
private: 声明上下文,声明 private 元素的类型(包括该类型的子类型)中的代码可访问该元素
!: public,private有与dim相同的声明功能,一个变量只能使用一个
声明参数.当文档开头使用了option explicit强制声明变量,public
和private同样可使用.
ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStud
io.v80.chs/dv_vbalr/html/6e06c1ab-fd78-47f0-83a8-1152780b5e1a
.htm
dim(3,5)定义多维数组: 此数组有 4 (3 + 1) 行,每行 6 (5 + 1) 列
例: dim a(1,1)
a(0,0)="aa"
a(0,1)="bb"
a(1,0)="cc"
a(1,1)="dd"
msgbox(a(1,0)) ‘返回值cc
!:ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_vbalr/html/fae3eca1-f0b2-4400-994b-7aa58a848448.htm
redim/1:动态定义数组
preserve:重新调整数组时保留原数组的内容,例:
dim a( )
redim a(1)
a(0)=1
a(1)=2
redim preserve a(2)
a(2)=4
msgbox(a(1)) ‘返回a(1)值为2
!:如果重新定义的数组个数比原来少,只保留重新定义的数组个数
option explicit:强制使用dim显示声明所有变量.
vartype( )/17:返回值的数据类型.
vbempty\0\未初始化 vbNull\1\无任何有效数据
vbInteger\2\整型 vbLong\3\长整型 vbSingle\4\单精度 vbDouble\5\双精度 vbCurrency\6\货币 vbDate\7\日期
vbString\8\字符串 vbObject\9\对象 vbError\10\错误
vbBoolean\11\布尔 vbVariant\12\Variant(仅用于变量数组)
vbDataObject\13\数据访问对象 vbDecimal\14\十进制
vbByte\17\字节 vbArray\8192\数组
const:创建常数,创建后不能改变.
sub:定义过程,执行操作但无返回值.如果sub过程无参数,则语句必须有 ( ).
function:定义函数,有返回值并把值赋给函数,返回值的数据类型为variant(变量).如果function无参数,则语句必须有( ).
inputbox/5:输入框,格式:inputbox(“prompt”,”buttons”)
prompt:提示区,最大字符长度为1024个,包含多行可用回车符
(chr(13)),换行符(chr(10),回车换行符(chr(13)&chr(10)分行.
title:标题区,省略时要用””两分号.
default:文本区,省略时要用””两分号.
xpos:指定对话框左边与屏幕左边在X轴的距离,单位为缇,省略时
为水平居中.
ypos:指定对话框上边与屏幕上边在Y轴的距离,省略时对话框在
屏幕中心垂直方向距下边大约三分之一处.
获得inputbox文本区的值定义变量a=inputbox(...),a就是文本
区输入的值
msgbox/3:弹出对话框,有返回值.
prompt,title
buttons/16:
vbokOnly:0 确定
vbokCancel:1 确定,取消
vbAbortRetryIgnore:2 放弃,重试,忽略
vbYesNoCancel:3 是,否,取消
vbYesNo:4 是,否
vbRetryCancel:5 重试,取消
vbCritical:16 临界信息(红色出错图标)
vbQuestion:32 警告查询(问号图标)
vbExclamation:48 警告消息(黄色感叹号)
vbInformation:64 信息消息(问号图标)
vbDefaultButton1:0 第一个按钮为默认
vbDefaultButton2:256 第二个按钮为默认
vbDefaultButton3:512 第三个按钮为默认
vbDefaultButton4:768 第四个按钮为默认
vbApplicationModal:0 应用程序模式:用户必须响应消息
框才能继续在当前应用程序中工作.
vbSystemModal:4096 系统模式:在用户响应消息框前,所有应
用程序都被挂起.
msgbox返回值/7:
vbOk:1确定,vbCancel:2 取消,vbAbort:3 放弃,
vbRetry:4 重试,vbIgnore:5 忽略,vbYes:6 是,vbNo:7 否
简单获取表单数据/2:
x=document.form1.text1.value
说明: form1表示被取值表单的表单名.
text1表示被取值表单中文本域类型的文本域名.
value表示文本域的值
! 它的取值方法是一层层往里套的,只能提取表单中value的值
me取得表单值:
<sub ff(val)>
<input type=”button” id(name)=”bu” value=”1” onclick=
“ff(me.id)”/>
!提取me所在input中的任意属性值,如type,id等的数据
通过单击事件调用脚本/2:
for加event调用,for指定表单中的button名,event指定事件
<script language=vbscript for="btnshow" event="onclick">
<input type="button" name="btnshow" value="here" />
表单button名加事件
<sub button1_onclick()>
<input type="button" name="button1"/>
或:
<sub button1()>
<input type=”button”name=”button1”onclick=”button1”>
while...wend:当条件为真时执行循环
do...loop:
do while(until)_loop:当while(until,条件为否)在loop前面表
示先判断后循环
do_loop while(until):当while(until,条件为否)在loop后面表
示先循环后判断
exit do:强制退出循环
for...next:
for val=1 to 10 step 2(-2)...next:
step用于设置步长值,在这个表达式中表示每一次循环加2,step
可以用负数,当用负数时初始值(to前面的值)要比终止值大.
exit for:强制退出循环
for each...in...next:
遍历数组中的每个数值,并且值可为无规律的数组
for each a in b
sum=sum+a
next
用a作为变量,b作为被遍历的数组,a从b中依次取值
select case:
执行多组语句中的一组,执行哪一组语句由表达式的值来决定
例:Select Case Drty_val ‘Drty_val变量为一个表达式的值
Case 0: t="未知"
Case 1: t="可移动"
Case 2: t="固定"
Case 3: t="网络"
Case 4: t="CD-ROM"
Case 5: t="RAM 磁盘"
end Select
Response.Write(t)
replace/6:
查找替换
replace(expression,find,replacewith,[compare],[count]
,[start])
expression:查找的内容
find:用于替换的内容
replacewith:替换后的内容
compare/3: 0,二进制比较 1,文本比较 2,基于数据库比较
count:替换多少个.默认为-1,表示替换全部
srart:从第几个开始替换,默认为1
lcase(字符串转换为小写),ucase(字符串转换为大写)
instr/4:
返回查找关键字位于所查找字符串中第一次出现的位置:
例:a=instr(“abc”,”c”)返回a值为3,表示查找关键字c在字
符串abc中第3个位置
instr([start],string1,string2[,compare])
start:从字符串的第几个字符开始查找,如果已指定compare,则必
须有srart.
string1:必选,被查找的字符串表达式
string2:必选,查找的内容
compare:比较方式
!:instr的返回值查阅vbscript手册
len:返回字符串表达式的字符个数
trim,ltrim,rtrim:清除字符串两边的空格,但不清除中间空格
mid/3:
从字符串中返回指定数目的字符
mid(string, start[ ,length ])
string: 字符串表达式,从中返回字符
start:从string中的第几个字符开始提取
length: 返回多少个字符
left/right/2:
从字符串左/右边返回指定数目的字符
left/right(string,length)
split:
与数组的方式返回用指定字符拆分成的子字符串,例:
dim a
a=split("fdfs2,2f,fdf",",",-1)’-1表示返回全部字符
document.write(a(0))
结果为fdfs2
!: a=split("fdfs2,2f,fdf",",",-1)执行的过程为:
dim a(2)
a(0)=”fdfs2”
a(1)=”2f”
a(2)=”fdf”
a=函数(41,556,51)和a(41,556,51)的区别:
a=函数(41,556,51):其中等号表示定义a为数组,并为数组a中的
每个变量对应后面的数组进行对应赋值
a(41,556,51):直接用变量a加()表示定义a为多维数组
常用vbscript转换函数/8:
asc:返回与字符串的第一个字母对应的ASCII字符代码
chr():返回ASCII对应的字符,例chr(34)返回”
cbool:返回布尔(true或false)型的值.用于比较字符串表达式
dim a,b
a=1
b=2
cbool(a=b)(a和b是否相同值)
cint:返回字符串表达式的整数值,只能用于数字字符串,如果数值
有小数小数部分将四舍五入
int: 返回字符串表达式的整数值,当负数小数时,-1.4返回-2
fix: 返回字符串表达式的整数值,当负数小数时,-1.4返回-1
cdbl:返回字符串表达式的double(双精度:带小数点的数值)值
formtanumber:返回字符串表达式的数字值,用参数设置返回小
数点后几位.例:
t=”14.51561”
t1=formtanumber(“t”,2)
response.write(t1) ‘返回14.51
eval:动态执行字符串表达式并返回变量型数据值.
eval(“1+2*5”)计算括号里的值
eval(“a=b”)比较a和b的的值是否相同,返回布尔值
eval(“a=123”)给a赋值
array:返回包含数组的变量的单个值,例:
dim a,b
b=array(41,12,5) ‘括号里只有一个值时array也将返回它
document.write(b(0)) ‘返回值b(0)为41
isarray:判断某变量是否为数组,例:
dim c
c=array(12,15,18)
document.write(isarray(c)) ‘返回值为true
!:isarray是判断一个变量是否是数组,不能直接判断数组
erase: 重新初始化固定大小数组的元素,释放动态数组的存储空间
例: Dim NumArray(1)
numarray(0)=1
numarray(1)=2
document.write(numarray(1))
Erase NumArray
msgbox(numarray(1))
!:开头为dim NumArray(1)表示固定了NumArray数组的变量个数,
用erase清除了赋给数组变量里的变量值,数组的变量和变量个
数依然保留
!:用redim重定义了数组大小, erase将清除数组的变量值和变量
个数,释放数组的存储空间
!:erase只能一次清除一个数组