--- title: while slug: Web/JavaScript/Reference/Statements/while tags: - JavaScript - Statement translation_of: Web/JavaScript/Reference/Statements/while ---
while 语句可以在某个条件表达式为真的前提下,循环执行指定的一段代码,直到那个表达式不为真时结束循环。
while (condition) statement
condition
statement
就会被执行。如果求值为假,则跳出while
循环执行后面的语句。statement
{ ... }
)包住多条语句。break
语句在condition
计算结果为真之前停止循环。下面的 while
循环会一直循环若干次,直到 n
等于 3
。
var n = 0; var x = 0; while (n < 3) { n++; x += n; }
在每次循环中,n
都会自增 1
,然后再把 n
加到 x
上。因此,在每轮循环结束后,x
和 n
的值分别是:
n
= 1,x
= 1n
= 2,x
= 3n
= 3,x
= 6当完成第三轮循环后,条件表达式n
< 3 不再为真,因此循环终止。
规范 | 状态 | 备注 |
---|---|---|
{{SpecName('ESDraft', '#sec-while-statement', 'while statement')}} | {{Spec2('ESDraft')}} | |
{{SpecName('ES6', '#sec-while-statement', 'while statement')}} | {{Spec2('ES6')}} | |
{{SpecName('ES5.1', '#sec-12.6.2', 'while statement')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES3', '#sec-12.6.2', 'while statement')}} | {{Spec2('ES3')}} | |
{{SpecName('ES1', '#sec-12.6.1', 'while statement')}} | {{Spec2('ES1')}} | Initial definition |
{{Compat("javascript.statements.while")}}