JavaScript 循环for、while、do while

JavaScript 循环for、while、do while

 

一、for 循环

// 1-10; 循环

// i++ 自增i,控制循环结束

for(var i = 1; i <= 10; i++){

document.write(i+',');

}

document.write("<hr>跳出循环时 i = "+i);

如图所示:

 

// 1-20的偶数

for(var i = 1; i <= 20; i++) {

if (i % 2 == 0) {

document.write(i+",");

}

}

如图所示:

 

 

// 计算 1-100 的和

var sum = 0;

for(var i = 1; i <= 100; i++) {

sum = sum + i;

}

document.write("1-100的和是 "+sum);

如图所示:

 

// 循环嵌套

// 外层控制的是行数,内层控制的是每行输出的列数

// 外层循环执行一次,内层循环时执行10次;

for (var n = 0; n < 10; n++){

console.log("n="+n);

for (var i = 0; i < 10; i++){

document.write("?");

console.log("i="+i);

}

document.write("<br>");

}

如图所示:

 

 

for (var n = 1; n <= 10; n++){

console.log("n="+n);

for (var i = 0; i < n; i++){

document.write("?");

console.log("i="+i);

}

document.write("<br>");

}

如图所示:



九九乘法表:

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>循环</title>
    <style>
       
        .tb {
            border-collapse: collapse;
           
        }
        .tb td {
            padding: 5px 20px;
        }
    </style>
</head>
<body>
    <script>
        document.write("<hr>");
        document.write("<table class='tb' border='1'>");
        for (var n = 1; n < 10; n++){
            document.write("<tr>");
            for (var i = 1; i <= n; i++){
                document.write("<td>"+i+"x"+n+"="+i*n+"</td>");          
            }
            document.write("</tr>");
        }
        document.write("</table>");



        document.write("<hr>");
        document.write("<table class='tb' border='1'>");
        for (var n = 1; n < 10; n++){
            document.write("<tr>");
            for (var i = 1; i < 10; i++){
                if (i <= n) {
                     document.write("<td>"+i+"x"+n+"="+i*n+"</td>");          
                } else {
                    document.write("<td></td>");
                }
            }
            document.write("</tr>");
        }
        document.write("</table>");
    </script>
</body>

如图所示:

 

/*

        break 语句用于跳出循环。

        continue 用于跳过循环中的一个迭代。

     */

for (i = 0; i < 10; i++) {

if (i ==2 ) {break;}

// 当if中只有一条语句,可以省去 {},该行语句也属于if语句

document.write(i);

}


 

document.write("<hr>");

for (i = 0; i < 10; i++) {

// i ==3,4..还能继续执行,只有2的时候跳出

if (i ==2 ) {continue;}

document.write(i);

}

如图所示:

 

 

二、while循环

var i = 0;

while (i < 10 ) {

document.write(i);

i++;

}

如图所示:

 

var n = 0;

while(true) {

document.write(n);

n++;

if(n == 20){ break; }

}

如图所示:

 

// 两个数的最大公约数是指能同时整除他们的最大正整数

var a = 30, b = 12;

// 20 / 6 = 3...2

// 6 / 2 = 3...0

 

while (true) {

var yushu = a % b;

// 余数如果为0,那么除数就是最大公约数

if(yushu == 0) {

// 找到了

console.log("最大公约数="+b);

break;

}

// 继续用除数 除以 余数

a = b;

b = yushu;

}

如图所示:

 

var a = 60, b = 33, value;

var yu;

while(yu !=0) {

//

yu = a % b;

console.log(b,yu);

//保存除数,最终是最大公约数

value = b;

// 继续用除数 除以 余数

a = b;

b = yu;

}

console.log("找到最大公约数:"+value);

如图所示:

 

三、do while 循环

// 先执行,再判断,即使条件是错误的,也会执行一次

var n = 0;

do {

n++;

document.write(n);

}while (n < 10);

如图所示:

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值