💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
| JScript  | [语言参考](#) | |-----|-----| # do...while 语句 第一次执行一个语句块,然后重复循环的执行该语句块,直到条件表达式等于 **false**。 **`do`**    `statement **while **(expression) ; ` #### 参数 statement 可选项。*expression* 是 **true** 时要执行的语句。可以是 [复合语句](#)。 expression 可选项。一个可以强制转换为 Boolean **true** 或 **false** 的 [表达式](#)。如果 *expression* 是 **true**,则再执行一次循环。如果 *expression* 是 **false**,则结束循环。 #### 说明 在循环的第一次重复执行完成前,不检查 *expression* 的值,保证至少执行循环一次。此后,循环每成功重复一次后都要检查表达式。 #### 示例 下面的示例阐明了如何使用 **do...while** 语句来重复 **Drives** 集合。 ~~~ function GetDriveList(){    var fso, s, n, e, x;    fso = new ActiveXObject("Scripting.FileSystemObject");    e = new Enumerator(fso.Drives);    s = "";    do ~~~    {        ~~~ x = e.item(); ~~~ ~~~       s = s + x.DriveLetter; ~~~ ~~~       s += " - "; ~~~ ~~~       if (x.DriveType == 3) ~~~ ~~~          n = x.ShareName; ~~~ ~~~       else if (x.IsReady) ~~~ ~~~          n = x.VolumeName; ~~~ ~~~       else ~~~ ~~~          n = "[Drive not ready]"; ~~~ ~~~          s += n + "<br>"; ~~~ ~~~       e.moveNext(); ~~~ ~~~    } ~~~ ~~~    while (!e.atEnd()); ~~~ ~~~    return(s); ~~~ ~~~ } ~~~ #### 要求 [版本 3](#) #### 请参阅 [break 语句](#) | [continue 语句](#) | [for 语句](#) | [for...in 语句](#) | [while 语句](#) | [Labeled 语句](#) [© 2000 Microsoft Corporation 版权所有。保留所有权利。使用规定。](#)