首頁 > web前端 > js教程 > javascript流程控制語句while循環和do...while循環語法實例詳解

javascript流程控制語句while循環和do...while循環語法實例詳解

伊谢尔伦
發布: 2017-07-24 09:44:51
原創
2368 人瀏覽過

while迴圈

和for迴圈有相同功能的還有while迴圈, while迴圈重複執行一段程式碼,直到某個條件不再滿足。
while語句結構:


1

2

3

4

while(判断条件)

{

  循环语句

}

登入後複製

使用while循環,完成從盒子裡取球的動作,每次取一個,共6個球。


1

2

3

4

5

6

7

<script type="text/javascript">

   var num=0; //初始化值

   while (num<=6){ //条件判断

     document.write("取出第"+num+"个球<br />");

     num=num+1; //条件值更新

   }

 </script>

登入後複製

Do...while循環
do while結構的基本原理和while結構是基本上相同的,但是它保證循環體至少被執行一次。因為它是先執行程式碼,後判斷條件,如果條件為真,繼續循環。
do...while語句結構:


1

2

3

4

5

do

{

  循环语句

}

while(判断条件)

登入後複製

試著輸出5個數字。


1

2

3

4

5

6

7

8

<script type="text/javascript">

   num= 1;

   do{

     document.write("数值为:" + num+"<br />");

    num++; //更新条件

   }

   while (num<=5)

 </script>

登入後複製

使用do...while語句,輸出6個數字。


1

2

3

4

5

6

7

8

<script type="text/javascript">

   var mynum =6;//mynum初值化数值为6

   do{

     document.write("数字:"+mynum+"<br/>");

     mynum=mynum-1;

   }

  while(mynum>=1);

 </script>

登入後複製

退出循環break
在while、for、do...while、while循環中使用break語句退出目前循環,直接執行後面的程式碼。
格式如下:


1

2

3

4

5

for(初始条件;判断条件;循环后条件值更新){

  if(特殊情况)

  {break;}

  循环代码

}

登入後複製

考試成績輸出,如果成績及格繼續輸出下個成績,如果成績不及格,退出並且後面成績不輸出.


1

2

3

4

5

6

7

8

9

10

11

12

<script type="text/JavaScript">

  var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值

  var i=0;

  while(i<mynum.length){

    if(mynum[i]<60){

    document.write("成绩"+mynum[i]+"不及格,不用循环了"+"<br>");

    break;

    }

    document.write("成绩:"+mynum[i]+"及格,继续循环"+"<br>");

    i=i+1;

  }

</script>

登入後複製

繼續循環continue
語句結構:


##

1

2

3

4

5

6

for(初始条件;判断条件;循环后条件值更新){

  if(特殊情况){

    continue;

  }

  循环代码

}

登入後複製

上面的循環中,當特殊情況發生的時候,本次循環將被跳過,而後續的循環則不會受到影響。

範例:考試成績輸出,如果成績及格繼續輸出下個成績,如果成績不及格,則不輸出該成績。


1

2

3

4

5

6

7

8

9

10

11

<script type="text/JavaScript">

   var mynum =new Array(70,80,66,90,50,100,89);//定义数组mynum并赋值

   var i;

   for(i=0;i<mynum.length;i++){

     if(mynum[i]<60){

       document.write("成绩不及格,不输出!"+"<br>");

       continue;

     }

     document.write("成绩:"+mynum[i]+"及格,输出!"+"<br>");

   }

 </script>

登入後複製

在一個大學的程式選修課班裡,我們得到了一組參加該班級的學生數據,分別是姓名、性別、年齡和年級,接下來呢,我們要利用JavaScript的知識挑出其中所有是大一的女生的名字哦。

學生資訊如下:

    ('小A','女',21,'大一'),  ('小B','男',23,'大三' ),

    ('小C','男',24,'大四'),  ('小D','女',21,'大一'),

# ('小E','女',22,'大四'),  ('小F','男',21,'大一'),

    ('小G','女',22,'大二'),  ('小H','女',20,'大三'),

    ('小I','女',20,'大一' ),  ('小J','男',20,'大三')



#

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

<script type="text/javascript">

  //第一步把之前的数据写成一个数组的形式,定义变量为 infos

  var infos = [

    [&#39;小A&#39;,&#39;女&#39;,21,&#39;大一&#39;],

    [&#39;小B&#39;,&#39;男&#39;,23,&#39;大三&#39;],

    [&#39;小C&#39;,&#39;男&#39;,24,&#39;大四&#39;],

    [&#39;小D&#39;,&#39;女&#39;,21,&#39;大一&#39;],

    [&#39;小E&#39;,&#39;女&#39;,22,&#39;大四&#39;],

    [&#39;小F&#39;,&#39;男&#39;,21,&#39;大一&#39;],

    [&#39;小G&#39;,&#39;女&#39;,22,&#39;大二&#39;],

    [&#39;小H&#39;,&#39;女&#39;,20,&#39;大三&#39;],

    [&#39;小I&#39;,&#39;女&#39;,20,&#39;大一&#39;],

    [&#39;小J&#39;,&#39;男&#39;,20,&#39;大三&#39;]

  ];

  //第一次筛选,找出都是大一的信息

  var arr1 = [];

  var n = 0;

  for(var i=0;i<infos.length;i++){

    if( infos[i][3] == "大一" ){

       arr1[n] = infos[i];

       document.write(arr1[n]+"<br/>");

       n=n+1;

    }

  }

  document.write("大一人数: "+arr1.length+"<br/>");

  //第二次筛选,找出都是女生的信息

  for(var i=0;i<arr1.length;i++){

  //这里可以用switch

    if(arr1[i][1]==&#39;女&#39;){

      document.write(arr1[i][0]+"<br/>");

    }

  }

</script>

登入後複製

以上是javascript流程控制語句while循環和do...while循環語法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板