Rumah >hujung hadapan web >tutorial js >javascript流程控制语句while循环和do...while循环语法实例详解

javascript流程控制语句while循环和do...while循环语法实例详解

伊谢尔伦
伊谢尔伦asal
2017-07-24 09:44:512341semak imbas

while循环

和for循环有相同功能的还有while循环, while循环重复执行一段代码,直到某个条件不再满足。
while语句结构:


 while(判断条件)
 {
   循环语句
 }

使用while循环,完成从盒子里取球的动作,每次取一个,共6个球。


<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语句结构:


 do
 {
   循环语句
 }
 while(判断条件)

试着输出5个数字。


<script type="text/javascript">
   num= 1;
   do{
     document.write("数值为:" + num+"<br />");
    num++; //更新条件
   }
   while (num<=5)
 </script>

使用do...while语句,输出6个数字。


<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语句退出当前循环,直接执行后面的代码。
格式如下:


 for(初始条件;判断条件;循环后条件值更新){
   if(特殊情况)
   {break;}
   循环代码
 }

考试成绩输出,如果成绩及格继续输出下个成绩,如果成绩不及格,退出并且后面成绩不输出.


 <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
语句结构:


 for(初始条件;判断条件;循环后条件值更新){
   if(特殊情况){
     continue;
   }
   循环代码
 }

上面的循环中,当特殊情况发生的时候,本次循环将被跳过,而后续的循环则不会受到影响。
例子:考试成绩输出,如果成绩及格继续输出下个成绩,如果成绩不及格,则不输出该成绩。


<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,'大三')


<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>

Atas ialah kandungan terperinci javascript流程控制语句while循环和do...while循环语法实例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn