概述
while 语句可以在某个条件表达式为真的前提下,循环执行指定的一段代码,直到那个表达式不为真时结束循环。
语法
while (condition) { statement }
-
condition
- 条件表达式,在每次循环前被求值。如果求值为真,statement 就会被执行。如果求值为假,则跳出 while 循环执行后面的语句。
-
statement
- 只要条件表达式求值为真,该语句就会一直被执行。要在循环中执行多条语句,可以使用块语句 { ... } 包住多条语句。
示例
下面的 while 循环会一直循环若干次直到 n
等于 3
。
var n = 0; var x = 0; while (n < 3) { n++; x += n; }
在每次循环中,n
都会自增 1
,然后再把 n
加到 x
上。因此,在每轮循环结束后,x
和 n
的值分别是:
- 第一轮后:
n
= 1,x
= 1 - 第二轮后:
n
= 2,x
= 3 - 第三轮后:
n
= 3,x
= 6
当完成第三轮循环后,条件表达式 n < 3 不再为真,因此循环终止。
规范
规范名称 | 规范状态 | 备注 |
---|---|---|
ECMAScript 1st Edition. | Standard | |
ECMAScript 5.1 (ECMA-262) while statement |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) while statement |
Standard |
浏览器兼容性
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |