linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘网络学院网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > JavaScript >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·javascript 时间对象的格式化
·去掉字符串前后的空格
·javascript 事件监听机制
·javascript 事件调用顺序
·js刷新框架子页面的七种方法
·JavaScript:替换字符串
·IE下的JScript编程需注意的内存
·用javascript操作word文档
·Javascript中CTRL+回车提交表单
·JS 获取鼠标位置
·javascript判断Email地址是否有
·Javascript中Select的OnChange
·JS实现的滑动展开与折叠效果
·有分页功能的WEB打印
·Javascript实现窗口最大化的严
最新文章
·使用CSS改变表格边框样式
·为网页添加浮动广告
·判断表单中添加是否数字的JS与
·让浏览器状态栏动起来
·使用Javascript制作行间颜色间
·禁止用右键查看源代码
·网页侦测四法
·制作弹出公告窗口
·为网页添加特效
·网页中取消鼠标右键方法大全
·JavaScript 根据屏幕解析度显示
·如何实现浏览器上的右键菜单
·如何制作浮动广告
·让弹出窗口变得“体贴”一些
·JavaScript技巧:让网页自动穿上
Google
 
VBScript基础教程之八使用循环语句
[ 作者:  加入时间:2007-12-12 16:26:06  来自:Linux联盟收集整理 ]
使用循环重复执行代码 wTBLinux联盟
wTBLinux联盟
循环用于重复执行一组语句。循环可分为三类:一类在条件变为 False 之前重复执行语句,一类在条件变为 True 之前重复执行语句,另一类按照指定的次数重复执行语句。 wTBLinux联盟
wTBLinux联盟
在 VBScript 中可使用下列循环语句: wTBLinux联盟
wTBLinux联盟
·Do...Loop: 当(或直到)条件为 True 时循环。 wTBLinux联盟
·While...Wend: 当条件为 True 时循环。 wTBLinux联盟
·For...Next: 指定循环次数,使用计数器重复运行语句。 wTBLinux联盟
·For Each...Next: 对于集合中的每项或数组中的每个元素,重复执行一组语句。 wTBLinux联盟
wTBLinux联盟
使用 Do 循环 wTBLinux联盟
wTBLinux联盟
可以使用 Do...Loop 语句多次(次数不定)运行语句块。当条件为 True 时或条件变为 True 之前,重复执行语句块。 wTBLinux联盟
wTBLinux联盟
当条件为 True 时重复执行语句 wTBLinux联盟
wTBLinux联盟
While 关键字用于检查 Do...Loop 语句中的条件。有两种方式检查条件:在进入循环之前检查条件(如下面的 ChkFirstWhile 示例);或者在循环至少运行完一次之后检查条件(如下面的 ChkLastWhile 示例)。在 ChkFirstWhile 过程中,如果 myNum 的初始值被设置为 9 而不是 20,则永远不会执行循环体中的语句。在 ChkLastWhile 过程中,循环体中的语句只会执行一次,因为条件在检查时已经为 False。 wTBLinux联盟
wTBLinux联盟
Sub ChkFirstWhile() wTBLinux联盟
Dim counter, myNum wTBLinux联盟
counter = 0 wTBLinux联盟
myNum = 20 wTBLinux联盟
Do While myNum > 10 wTBLinux联盟
myNum = myNum - 1 wTBLinux联盟
counter = counter + 1 wTBLinux联盟
Loop wTBLinux联盟
MsgBox "循环重复了 " & counter & " 次。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
Sub ChkLastWhile() wTBLinux联盟
Dim counter, myNum wTBLinux联盟
counter = 0 wTBLinux联盟
myNum = 9 wTBLinux联盟
Do wTBLinux联盟
myNum = myNum - 1 wTBLinux联盟
counter = counter + 1 wTBLinux联盟
Loop While myNum > 10 wTBLinux联盟
MsgBox "循环重复了 " & counter & " 次。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
重复执行语句直到条件变为 True wTBLinux联盟
wTBLinux联盟
Until 关键字用于检查 Do...Loop 语句中的条件。有两种方式检查条件:在进入循环之前检查条件(如下面的 ChkFirstUntil 示例);或者在循环至少运行完一次之后检查条件(如下面的 ChkLastUntil 示例)。只要条件为 False,就会进行循环。 wTBLinux联盟
wTBLinux联盟
Sub ChkFirstUntil() wTBLinux联盟
Dim counter, myNum wTBLinux联盟
counter = 0 wTBLinux联盟
myNum = 20 wTBLinux联盟
Do Until myNum = 10 wTBLinux联盟
myNum = myNum - 1 wTBLinux联盟
counter = counter + 1 wTBLinux联盟
Loop wTBLinux联盟
MsgBox "循环重复了 " & counter & " 次。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
Sub ChkLastUntil() wTBLinux联盟
Dim counter, myNum wTBLinux联盟
counter = 0 wTBLinux联盟
myNum = 1 wTBLinux联盟
Do wTBLinux联盟
myNum = myNum + 1 wTBLinux联盟
counter = counter + 1 wTBLinux联盟
Loop Until myNum = 10 wTBLinux联盟
MsgBox "循环重复了 " & counter & " 次。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
退出循环 wTBLinux联盟
wTBLinux联盟
Exit Do 语句用于退出 Do...Loop 循环。因为通常只是在某些特殊情况下要退出循环(例如要避免死循环),所以可在 If...Then...Else 语句的 True 语句块中使用 Exit Do 语句。如果条件为 False,循环将照常运行。 wTBLinux联盟
wTBLinux联盟
在下面的示例中,myNum 的初始值将导致死循环。If...Then...Else 语句检查此条件,防止出现死循环。 wTBLinux联盟
wTBLinux联盟
Sub ExitExample() wTBLinux联盟
Dim counter, myNum wTBLinux联盟
counter = 0 wTBLinux联盟
myNum = 9 wTBLinux联盟
Do Until myNum = 10 wTBLinux联盟
myNum = myNum - 1 wTBLinux联盟
counter = counter + 1 wTBLinux联盟
If myNum < 10 Then Exit Do wTBLinux联盟
Loop wTBLinux联盟
MsgBox "循环重复了 " & counter & " 次。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
使用 While...Wend wTBLinux联盟
wTBLinux联盟
While...Wend 语句是为那些熟悉其用法的用户提供的。但是由于 While...Wend 缺少灵活性,所以建议最好使用 Do...Loop 语句。 wTBLinux联盟
wTBLinux联盟
使用 For...Next wTBLinux联盟
wTBLinux联盟
For...Next 语句用于将语句块运行指定的次数。在循环中使用计数器变量,该变量的值随每一次循环增加或减少。 wTBLinux联盟
wTBLinux联盟
例如,下面的示例将过程 MyProc 重复执行 50 次。For 语句指定计数器变量 x 及其起始值与终止值。Next 语句使计数器变量每次加 1。 wTBLinux联盟
wTBLinux联盟
Sub DoMyProc50Times() wTBLinux联盟
Dim x wTBLinux联盟
For x = 1 To 50 wTBLinux联盟
MyProc wTBLinux联盟
Next wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
关键字 Step 用于指定计数器变量每次增加或减少的值。在下面的示例中,计数器变量 j 每次加 2。循环结束后,total 的值为 2、4、6、8 和 10 的总和。 wTBLinux联盟
wTBLinux联盟
Sub TwosTotal() wTBLinux联盟
Dim j, total wTBLinux联盟
For j = 2 To 10 Step 2 wTBLinux联盟
total = total + j wTBLinux联盟
Next wTBLinux联盟
MsgBox "总和为 " & total & "。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
要使计数器变量递减,可将 Step 设为负值。此时计数器变量的终止值必须小于起始值。在下面的示例中,计数器变量 myNum 每次减 2。循环结束后,total 的值为 16、14、12、10、8、6、4 和 2 的总和。 wTBLinux联盟
wTBLinux联盟
Sub NewTotal() wTBLinux联盟
Dim myNum, total wTBLinux联盟
For myNum = 16 To 2 Step -2 wTBLinux联盟
total = total + myNum wTBLinux联盟
Next wTBLinux联盟
MsgBox "总和为 " & total & "。" wTBLinux联盟
End Sub wTBLinux联盟
wTBLinux联盟
Exit For 语句用于在计数器达到其终止值之前退出 For...Next 语句。因为通常只是在某些特殊情况下(例如在发生错误时)要退出循环,所以可以在 If...Then...Else 语句的 True 语句块中使用 Exit For 语句。如果条件为 False,循环将照常运行。 wTBLinux联盟
wTBLinux联盟
使用 For Each...Next wTBLinux联盟
wTBLinux联盟
For Each...Next 循环与 For...Next 循环类似。For Each...Next 不是将语句运行指定的次数,而是对于数组中的每个元素或对象集合中的每一项重复一组语句。这在不知道集合中元素的数目时非常有用。 wTBLinux联盟
wTBLinux联盟
在以下示例中,Dictionary 对象的内容用于将文本分别放置在多个文本框中: wTBLinux联盟
wTBLinux联盟
<HTML> wTBLinux联盟
<HEAD><TITLE>窗体与元素</TITLE></HEAD> wTBLinux联盟
<SCRIPT LANGUAGE="VBScript"> wTBLinux联盟
<!-- wTBLinux联盟
Sub cmdChange_OnClick wTBLinux联盟
Dim d '创建一个变量 wTBLinux联盟
Set d = CreateObject("Scripting.Dictionary") wTBLinux联盟
d.Add "0", "Athens" '添加键和项目 wTBLinux联盟
d.Add "1", "Belgrade" wTBLinux联盟
d.Add "2", "Cairo" wTBLinux联盟
wTBLinux联盟
For Each I in d wTBLinux联盟
Document.frmForm.Elements(I).Value = D.Item(I) wTBLinux联盟
Next wTBLinux联盟
End Sub wTBLinux联盟
--> wTBLinux联盟
</SCRIPT> wTBLinux联盟
<BODY> wTBLinux联盟
<CENTER> wTBLinux联盟
<FORM NAME="frmForm" wTBLinux联盟
wTBLinux联盟
<Input Type = "Text"><p> wTBLinux联盟
<Input Type = "Text"><p> wTBLinux联盟
<Input Type = "Text"><p> wTBLinux联盟
<Input Type = "Text"><p> wTBLinux联盟
<Input Type = "Button" NAME="cmdChange" VALUE="单击此处"><p> wTBLinux联盟
</FORM> wTBLinux联盟
</CENTER> wTBLinux联盟
</BODY> wTBLinux联盟
</HTML> Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·VBScript基础教程之九VBScript过程  (2007-12-12 16:23:34)
 ·VBScript基础教程之十VBScript编码约定  (2007-12-12 16:22:54)
 ·VBScript基础教程之十一VBScript与窗体  (2007-11-30 13:14:25)
 ·VBScript基础教程之十二在VBScript中使用对象  (2007-11-30 13:13:56)
 ·《VBScript制作实例》笔记  (2007-11-23 14:51:13)
 ·纯ASP(VBscript)写的全球IP地址搜索程序  (2007-11-20 15:26:48)
 ·VBScript 数据类型  (2007-11-14 07:40:23)
 ·区分JavaScript,Js,VBScript,ASP  (2007-10-29 13:34:19)
 ·Delphi快速入门基础教程系列5  (2007-10-12 22:16:31)
 ·Delphi快速入门基础教程系列4  (2007-10-12 22:14:38)