关于for循环的小案例

for循环:

for(循环需要变量的初始值;循环的条件(当满足条件时执行语句块);变量不断向条件外变化)
1、循环需要变量的初始值仅执行一次,并且不一定需要使用var
2、循环的条件是一个表达式,隐式转换为布尔值,为真时进入语句块,根据循环次数判断多少次
3、变量不断向条件外变化(这个理解比较片面)。每次循环完成后执行的语句内容

关于for的死循环:

for(;;){

}

用for循环写出0-100以内数相加的和

 var sum=0;
       for(var i=1;i<100;i++){
           sum+=i;
       }
       console.log(sum);//4950 */


       /*  //普通的深度遍历:
        var obj={
            value:1,
            link:{
                value:2,
                link:{
                    value:3,
                    link:{
                        value:4,
                        link:{

                        }
                    }
                }
            }
        }

用for循环写深度遍历:

for(;obj.link;obj=obj.link) console.log(obj.value);

用for循环写出一个0-100以内的所有质数

 for(var i=2,j,bool;i<100;i++){
           for(j=2,bool=true;j<i;j++){
               if(i%j===0){
                   bool=!bool;
                   break;
               }
           }
           if(bool) console.log(i);
       }

用for循环写出一个十行十列的表格:

 var row=10,col=10;
       var str="<table>";
       for(var i=0;i<row;i++){
           str+="<tr>";
           for(var j=0;j<col;j++){
               str+="<td></td>";
           }
           str+="</tr>";
           
       }
       str+="</table>";
        //document.write(str);
       document.body.innerHTML+=str;

用for循环写一个水仙花数:

for(var i=100,a,b,c;i<1000;i++){
           a=parseInt(i/100);
           b=parseInt(i/10)%10;
           c=i%10;
           if(a*a*a+b*b*b+c*c*c===i) console.log(i);
       }

用for循环写一个菱形:

var row=10,col=20;
       for(var i=0;i<row;i++){
            if(i<5){
                for(var k=row-i-1;k>=0;k--){
                document.write("&ensp;");
            }
                for(var j=0;j<i*2-1;j++){
                document.write("*");
                }
            }else{
                for(var k1=0;k1<i;k1++){
               document.write("&ensp;");
           }
                for(var j1=(row-i-1)*2;j1>=0;j1--){
                    document.write("*");
                }
            }
           
           document.write("<br>")
       }

用for循环写一个倒序的字符串

var str="abcdefghijk";
       var s='';
       for(var i=str.length-1;i>=0;i--){
           //length-1是因为索引是从0开始的
           s+=str[i];
       }
       console.log(s);//kjihgfedcba

注意:

注意当进行从大到小循环时,条件注意使用=的问题
在双重循环时,不要在内层中判断外层变量或者改变外层变量
如果使用break,不写跳出label,它进跳出当前层循环
循环是同步的
循环不能此处超过10亿次,循环不能嵌套太多,一般不超过2层

原文地址:https://www.cnblogs.com/zmlAliIqsgu/p/13284417.html