While … Wend:当型循环。只要条件表达式 = True,就反复执行循环体;一旦条件变成False,立刻退出循环。
语法
While 条件
语句块
Wend
Code language: PHP (php)
执行顺序:先判断条件,条件成立才执行循环体。 如果一开始条件就是False,循环体一次都不会运行。
示例代码
<%
dim i
i = 1
While i < 100
i = i + 4
Response.Write i
Response.Write "<br/>"
wend
%>
Code language: PHP (php)
执行流程拆解
i = 1,判断1 < 100→ Truei = 1 + 4 = 5,输出5- 判断
5 < 100→ True i = 5 + 4 = 9,输出9- …持续循环
- 当
i = 97:97<100→ True,i=101,输出101 - 判断
101 < 100→ False → 循环结束
输出序列:
5
9
13
...
97
101
死循环
循环内部一定要修改条件里的变量,否则条件永远为True,造成死循环。 错误示例(死循环):
<%
dim i
i=1
While i < 100
Response.Write i
'没有修改i的值,i永远=1,条件永远true
Wend
%>
Code language: PHP (php)
三种循环对比
| 循环语句 | 适用场景 | 特点 |
|---|---|---|
For … Next | 已知循环次数 | 计数器自动增减 |
For Each … Next | 遍历集合/数组 | 不需要知道元素个数 |
While … Wend | 不知道循环次数,按条件判断 | 先判断条件,满足才执行 |
Do Loop(VBS另外一种条件循环)
ASP VBScript还有Do ... Loop,比While Wend更灵活,支持先执行后判断:
<%
Dim i
i=1
Do While i < 100
Response.Write i & "<br>"
i=i+4
Loop
%>
Code language: PHP (php)

Previous: 循环语句-for next语句
Next: Exit语句