JS中的循环结构

在JS中有三种循环体系,分别是do while 、while和for循环。

一、do while循环

在do while循环语句中,不管如何都会先执行一遍do{ }里面的代码,然后再条件判断。

  do{
    //条件满足的代码,先执行一遍
  }while(条件)

我就直接拿例子演示:如输出100以内的偶数

 var i = 1;  //声明变量
 do {  
    i++;  //变量自增
    if (i % 2 == 0){//执行语句
        document.write(i + "<br>");  
     }
} while (i <= 100);//条件判断

当我们的判断条件一直满足时,这个循环就可以无限循环,无限循环在我们应用中有可能用到,当我们也不能让他一直循环下去,这样对电脑有很大的负担,所以在循环中我们可以用break跳出循环,这一点和switch中的分支条件满足后跳出分支是一样的意思。在循环中还有continue用于跳过本次循环,比如上面的例子我们可以这样来写:

 var i = 1;  //声明变量
 do {  
    i++;  //变量自增
    if (!(i % 2 == 0)){//执行语句
         continue;
     }else{
         document.write(i + "<br>");
     }
} while (i <= 100);//条件判断


二、while循环

while 和do while 有所不同的是,while是先进行条件判断,如果条件满足就进入循环执行里面的语句,如果判断条件不成立,就不会进入循环。

例如:输出3位的水仙花数

   var num = 2;
   while (num<1000) {
            var a = num % 10;//求个位数
            var b = parseInt(((num / 10) % 10));//求十位数
            var c = parseInt(num / 100);//求百位数
            if(num == a * a * a + b * b * b + c * c * c){//值相等时输出
                document.write(num + "<br>");
            }
            num++;
      }

三.for循环

for循环有三个要素:

   for(声明;判断条件;自增量){
    //声明变量是不一定要在for()里面,也可以在外面声明
    //如果不写判断条件不写,或者写true和其他真值就可以进入死循环;可以用break退出循环
    //自增量可以写在{}里
   }

例如:用for循环输入水仙花数

   for(var i = 2;i<1000;i++) {
        var a = i % 10;
        var b = parseInt(((i / 10) % 10));
        var c = parseInt(i / 100);
        if(i == a * a * a + b * b * b + c * c * c){
            document.write(i + "<br>");
         }
   }

for循环的嵌套使用

什么是for循环的嵌套,就是在for循环里面在套一个或者多个for循环,当然下面的for循环里还能再写for循环,这就是for循环嵌套使用,我们用到的比较常见的可能就是两层或者三层的for循环。
例如我们要打印99乘法表,这里我们就可以用两层for循环。

  for(var i=1;i<10;i++){
      for(var j=1;j<=i;j++){
           document.write(j+"*"+i+"="+j*i+" ");
           /*第一次循环时i=1,满足条件进入里层循环,j=1,j<=i,所以也满足条件,
           在页面输输出一次(j+"*"+i+"="+j*i+" ")也就是 1*1=1,j++之后等于2,不满足j<=i,退出
           里层循环,i++这时i=2,满足条件进入里层循环,这时j还是从1开始j<=i,满足条件输出1*2=2,
           j++等于2 满足j<=i,输出2*2=4,以此类推得出99乘法表。l
           */
        }
        document.write("<br>");/*里层循环每执行完一次(这里的执行完是当里层循环条件不
        在满足时才算完成一次)换行*/
     }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值