for循环语句
for语句通常由2部分组成:一是“条件控制部分”,二是“循环体”。
语句结构:
for(初始值; 逻辑条件;增量或减量){循环体}
定义一个循环:
案例1:输出1~100之间的数字
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
for(var i=1; i<=100; i++){
document.write(i+'<br />');
}
</script>
</head>
<body>
</body>
</html>
案例2.输出1~100之间的偶数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
//第一种
for(var i=2; i<=100; i+=2){
document.write(i);
}
// 第二种
for(var i=1;i<=100; i++){
if(i%2==0){
document.write(i+' ');
}
}
</script>
</head>
<body>
</body>
</html>
案例3.输出1~100之间的偶数个数
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
var count=0;//用来记录偶数的个数 /计数器
for(var i=1;i<=100; i++){
if (i%2==0){ //只有这个条件为真时才会记录偶数的个数以及输出这个偶数
count++;
document.write(i+' ');
}
}
document.write('总共有:'+count +'个');*/
</script>
</head>
<body>
</body>
</html>
案例4.输出1~100之间的数字,但不包含45,60,90
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script type="text/javascript">
//第一种
for(var i=1;i<100;i++){
if(i!=45 && i!=60 && i!=90){
document.write(i+'<br />');
}
}
//第二种
for(var i=1;i<100;i++){
//
// if(i==45 || i==60 || i==90){
// break; //退出整个循环, 输出结构为1-44
// continue;// 跳出当前的循环,执行下一循环.
// }
// document.write(i+'<br />');
// }
</script>
</head>
<body>
</body>
</html>
注:JavaScript支持的跳转语句主要有2种:
(1)break语句;
(2)continue语句;
break语句与continue语句的主要区别是:break是彻底结束循环,而continue是结束本次循环。在这一点跟其他编程语言(如C和Java)相同
1) break语句
break语句用于退出包含在最内层的循环或者退出一个switch语句。break语句通常用于while、do…while、switch或for语句中。
2) continue语句
continue语句跟break语句类似。不同之处在于,continue语句用于退出本次循环,并开始下一次循环。而break语句是退出所有循环!
案例5:模拟银行取款输入密码案例
分析:总共有三次输入密码的机会,如果三次都输入错误,则账户冻结。假设用户第一次输入错误,提示用户再次输入, 如果正确直接进入取款界面,假设用户的账户名和密码为aaaa123
第一种方法(for循环语句)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
var mess=prompt('请输入你的用户名和密码');
if(mess=='aaaa123'){
document.write('登录成功,请取款');
}else{
// 进入循环体
for(var i=1;i<3; i++){
if(i==1){
mess=prompt('请重新输入');
if(mess=='aaaa123'){
document.write('登录成功');
break;
}else{
continue;
}
}else {
mess=prompt('请再次输入');
if(mess=='aaaa123'){
document.write('登录成功,取款');
break;
}else{
alert('账户冻结');
}
}
}
}
</script>
</head>
<body>
</body>
</html>
第二种方法(do...while循环语句)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript">
var count=0;
do{
count++;
var mess=prompt('请输入用户名和密码');
if(mess=='aaa123'){
document.write('登录成功');
break;
}else{
if(count==3){
alert('账户冻结');
}
continue;
}
}while (count<3)
</script>
</head>
<body>
</body>
</html>