首页 > 编程语言 > 详细

JavaScript循环结构

时间:2019-08-24 21:30:11      阅读:106      评论:0      收藏:0      [点我收藏+]

循环语句:

while(){}

//格式:
while //语句名 () //执行条件 {} //执行语句(循环体)

特点:

  • 只有条件表达式为真才会执行后面{}中的代码
  • 大括号中的代码有可能会被执行多次

注意:为避免死循环,一定要在循环体内改变条件中使用的变量的值

demo:

//入职薪水10K,每年涨幅5%,第50年工资多少
      <script>
        var i = 1;
        var sum = 10000; 
        while(i<=50){
            sum += sum * 0.05;
            i++;
        }
        console.log(sum);
    </script>

do{}while(){}:

//格式:
do            //语句名1
{}            //do的执行语句
while        //语句名2
()            //执行条件
{}           //while的执行语句

特点:无论条件表达式是否为真, 循环体都会被执行一次

do-while和while的区别:do-while在任何情况下都比while多执行一次

注意:do-while的改变计数器需要写在do语句中,否则会造成死循环。

demo:

 1 <script>
 2 var i = 0;
 3 do{
 4     console.log("这是do的语句:" + i);
 5          i++;
 6      }while(i < 10){
 7          console.log("这是while的语句:" + i);
 8  }
 9  //条件为true时,会执行do后面的语句
10   // 条件为false时,会执行一次while后的语句
11 </script>

for(){}:

1 //格式:
2 while        //语句名
3 ()            //条件组
4 {}           //执行语句(循环体)

demo:

 1 //计算1-10的阶乘和
 2 <!DOCTYPE html>
 3 <html>
 4     <head>
 5         <meta charset="utf-8" />
 6         <meta name="viewport" content="width=device-width, initial-scale=1">
 7         <title>1-10阶乘的和</title>
 8     </head>
 9     <body>    
10     </body>
11     <script>
12         var sum = 0;
13         for(var j=1;j<=10;j++){
14             var jc = 1;
15             for(var i=1;i<=j;i++){
16                 jc = jc * i;
17             }
18             sum = sum + jc;
19         }
20         console.log(sum);
21     </script>
22 </html>

循环中的控制关键字

break关键字:结束循环,不在执行,立即结束;

continue关键字:跳过本次循环

小练习:

 

打印出1000-2000年中所有的闰年,并以每行四个数的形式输出

 

 1 //打印出1000-2000年中所有的闰年,并以每行四个数的形式输出
 2 <script>
 3 var a = 0;
 4     for(var i=1000;i<=2000;i++){
 5         if(i%4==0 && i%100!=0 || i%400==0){
 6             document.write(i + "&nbsp;&nbsp;");
 7             a++;
 8             if(a%4 == 0){
 9                 document.write("<br>")
10             }
11         }
12     }
13 </script>

求出1-1/2+1/3-1/4…..1/100的和          var i=1;

 

 1 //求出1-1/2+1/3-1/4…..1/100的和          var i=1;
 2 <!DOCTYPE html>
 3 <html>
 4     <head>
 5         <meta charset="utf-8" />
 6         <meta name="viewport" content="width=device-width, initial-scale=1">
 7         <title>Document</title>
 8     </head>
 9     <body>
10     </body>
11     <script>
12         var sum = 0;
13         for(var i=1;i<=100;i++){
14             if(i%2 == 0){
15                 sum -= 1/i;
16             }else{
17                 sum += 1/i;
18             }
19         }
20         console.log(sum);
21     </script>
22 </html>

 

篮球从5米高的地方掉下来,每次弹起的高度是原来的30%,经过几次弹起,篮球的高度小于0.1米。(必须用到关键字break)

 1 //篮球从5米高的地方掉下来,每次弹起的高度是原来的30%,经过几次弹起,篮球的高度小于0.1米。(必须用到关键字break)
 2 <script>
 3 var i = 0;
 4     var h = 5;
 5     while(true){
 6         h = h * 0.3;
 7         i++;
 8 
 9         if(h < 0.1){
10             console.log(i)
11             // 停止循环
12             break;
13         }
14     }
15 
16 </script>

完成一个梯形(圣诞树)打印功能

 1 //完成一个梯形(圣诞树)的打印功能
 2 <script>
 3    for(var i=0;i<9;i++){
 4         for(var j=9;j>i;j--){
 5             document.write("&nbsp;")
 6         }
 7         for(var j=0;j<i+2;j++){
 8             document.write("*")
 9         }
10         for(var j=0;j<i;j++){
11             document.write("*")
12         }
13         document.write("<br>")
14     }
15     for(var i=0;i<9;i++){
16         for(var j=9;j>i;j--){
17             document.write("&nbsp;")
18         }
19         for(var j=0;j<i+2;j++){
20             document.write("*")
21         }
22         for(var j=0;j<i;j++){
23             document.write("*")
24         }
25         document.write("<br>")
26     }
27 
28     for(var i=0;i<9;i++){
29         for(var j=9;j>1;j--){
30             document.write("&nbsp;")
31         }
32         for(var j=0;j<5;j++){
33             document.write("*")
34         }
35         document.write("<br>")
36     }
37 </sprict>

 

JavaScript循环结构

原文:https://www.cnblogs.com/cx1215/p/11405982.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!