循环语句-while wend语句

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)

执行流程拆解

  1. i = 1,判断 1 < 100 → True
  2. i = 1 + 4 = 5,输出5
  3. 判断 5 < 100 → True
  4. i = 5 + 4 = 9,输出9
  5. …持续循环
  6. i = 9797<100 → True,i=101,输出101
  7. 判断 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)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注