由浅入深JavaScript6基础-语句2

xiaoxiao2021-02-28  99

JavaScript语句 JavaScript循环语句     JavaScript循环语句又称迭代语句。声明一组反复执行的命令,知道满足 条件。循环语句有,for ,while do-while for in JavaScript循环语句——for     for语句应该是最著名的循环语句了,在许多语言都有他的影子。     基本语法:     for (initialization; expression; post-loop-expression) statement     eg:输出1到9         for(var i =0 ;i<10;i++){             alert(i);         }     定义变量i,初始化为0;执行条件是i<10,当>=10时退出循环,     每循环完一次i+1;     其中变量i也可以在外面定义,i++也可以写成其他的条件,终止条件也可以不写     eg:             var i = 0;             for(i;;){                 alert(i);//没有终止条件没有每次循环后的操作,一直输出0             }         上面这个例子也称为死循环,死循环会一直运行下去,会大量消耗机器资源。     eg:     var i = 0;             for(i;;i+=2){                 alert(i);             }         上面这个例子也是死循环,无限输出,0,2,4,6……          JavaScript循环语句——while     基本语法:while (expression) statement     当满足while后面的表达式才执行statement语句,否则跳过语句。     eg:输出1到9         <script>             var i = 1;             while(i<10){                 console.log(i);                 i++;             }         </script> JavaScript循环语句——do-while     基本语法:do {statement} while (expression);     循环执行do代码块里的语句,直到while里的表达式不满足     eg:输出0到9         <script>             var i = 0;             do{                 console.log(i)                 i++;             }while(i<10);         </script> JavaScript循环语句——for-in     for-in多用在循环遍历对象         <script>             var oJson = {name:'zdx',age:12,sayHello:function(){console.log('函数')}} ;             for(var i in oJson){                 alert(i+':'+oJson[i]);//name:zdx             }         </script>     声明一个json对象oJson,里面有属性name,age,sayHello,获取该对象的属性     和值,用for-in遍历。      JavaScript控制循环:     JavaScript用来控制循环的有break和continue关键字。     break立即退出循环体,不再执行循环下面的代码,     continue跳过本次循环继续执行下次循环。     eg:         <script>             for(var i = 0;i<10;i++){                 if(i==5){                     console.log('break:'+i);                     break;                             }                     console.log(i);             }             for(var i = 0;i<10;i++){                 if(i==5){                     continue;                     console.log('不执行');                 }                 console.log(i);             }         </script>     对于第一个循环。循环输出0,1,2,3,4之后4++变成5,进入if判断,i==5     输出break :5 ;然后遇到break关键字,立即退出for循环。     其最终结果为,0,1,2,3,4,break : 5     对于第二个循环。循环输出0,1,2,3,4之后4++变成5,进入if判断,i==5     遇到关键字continue,跳过本次循环,直接进入下次循环。     其最终结果为:0,1,2,3,4,6,7,8,9缺少了5      带标签的break,continue     当我们面对双重循环,break,和continue是指的哪个循环呢?     事实上:默认情况下,break,continue所在哪个循环就作用在那个循环上。         <script>             for(var i = 0;i<3;i++){                 for(var j = 0 ;j<3;j++){                     if(j==1){                         break;//该break作用在内层for语句。                         //因为break在内层循环上                     }                     console.log("j:"+j);                 }                 if(i=2){                     continue;//continue作用在外层for语句。                         //因为continue在外层循环上                 }                 console.log('i:'+i);             }         </script>     但是当我们想要在内层循环break,或continue外层循环怎么办,或者     当遇到更高级的循环,比如多重循环嵌套,如果又遇到了continue,     跳出本次是指跳出哪个循环呢,遇到break是终止哪个循环呢。为了防止模糊     不清的概念,所以有了标签,给循环带上标签,然后break,和continue后面     跟上标签,就知道跳出的是哪个循环了。     再循环前加个标签,标签不固定,可以自定义。一般都用outer,inter。     eg:         <script>         out: for(var i = 0;i<10;i++){             console.log('i:'+i);             inner: for(var k = 0;k<10;k++){                 if(k==5){                     break out;                 }                 console.log('k:'+k);             }         }         console.log('.................');         out: for(var i = 0;i<10;i++){             console.log('i:'+i);             inner: for(var k = 0;k<10;k++){                 if(k==5){                     continue out;                 }                 console.log('k:'+k);             }         }                 </script>

       

总结:分支和循环是学好JavaScript语言的基础,一定要扎实牢靠,对于本章节的

内容需要大量练习。多重if,多重循环,break,continue。

——总结—— 限于文章篇幅原因,这里仅仅介绍冰山一角。由于笔者的水平有限,编写时间也很仓促, 文中难免会出现一些错误或者不准确的地方,不妥之处恳请读者批评指正

转载请注明原文地址: https://www.6miu.com/read-53498.html

最新回复(0)