JavaScript入门教程

JavaScript简介
JavaScript语法基础
JavaScript流程控制
JavaScript函数
面向对象编程
JavaScript事件
JavaScript DOM
正则表达式
JavaScript BOM
AJAX

专题分析

浏览器兼容性
JS优化
Web前端开发规范
编辑器推荐
总结和笔记

学习助手

对象参考手册
ECMAScript分析
数据中心
QQ交流群

Javascript while和do-while循环

while循环

while 语句与 if 语句相似,都有条件来控制语句(或语句块)的执行,其语言结构基本相同:
while(conditions){
    statements;
}

while 语句与 if 语句的不同之处在于:在if条件假设语句中,若逻辑条件表达式为真,则运行statements语句(或语句块),且仅运行一次;while 循环语句则是在逻辑条件表达式为真的情况下,反复执行循环体内包含的语句(或语句块)。

注意:while语句的循环变量的赋值语句在循环体前,循环变量更新则放在循环体内;for循环语句的循环变量赋值和更新语句都在for后面的小括号中,在编程中应注意二者的区别。

【例3-5】用while()循环来计算1+2+3 ... +98+99+100的值:
<html>
<head>
<title>计算1+2+3 ... +98+99+100的值</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
var total=0;
var i=1;
while(i<=100){
    total+=i;
    i++;
}
alert(total);
</script>
</body>
</html>

在某些情况下,while循环大括号内的statements语句(或语句块)可能一次也不被执行,因为对逻辑条件表达式的运算在执行statements语句(或语句块)之前。若逻辑条件表达式运算结果为假,则程序直接跳过循环而一次也不执行statements语句(或语句块)。

do...while循环

若希望至少执行一次statements语句(或语句块),可改用do…while语句,其基本语法结构如下:
do {
    statements;
}while(condition);


【例3-6】用do-while()循环来计算1+2+3 ... +98+99+100的值:
<html>
<head>
<title>计算1+2+3 ... +98+99+100的值</title>
</head>
<body>
<script language="JavaScript" type="text/javascript">
var total=0;
var i=1;
do{
    total+=i;
    i++;
}while(i<=100);
alert(total);
</script>
</body>
</html>

实例演示1:

点击这里显示 1+2+3 ... +98+99+100 的值


实例演示2:
计算从的值

for、while、do…while三种循环语句具有基本相同的功能,在实际编程过程中,应根据实际需要和本着简单易懂的原则来选择循环语句。