美文网首页
javascript中的break, continue和retu

javascript中的break, continue和retu

作者: 妙言Lisa | 来源:发表于2016-12-26 12:51 被阅读0次

这几个有点儿类似,一般会用于退出循环或函数,总觉得分不清,这里做一下简单的总结。

break

  • 跳出本层循环,执行外层循环
  • 用于for循环或者switch语句,只有出现在这些语句的break才是合法的。

continue

  • 跳出本次循环,执行下次循环
  • 用于while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用会报错

return

  • 跳出所有循环
  • 或用于指定函数返回的值
  • 只能出现在函数体内,出现在代码中的其他任何地方会报错

例子

<script type="text/javascript">
    document.write("break:跳出本层循环,执行外层循环");
    document.write("<br/>");
    for(var i=1;i<=3;i++){
        document.write("<br/>");
        document.write("外层循环i="+i);
        document.write("<br/>");
        for(var j=1;j<=4;j++){
            if(j==3){
                break;
            }
            document.write("内层循环j="+j);
            document.write(' ');
        }
    }

    document.write("<br/>");
    document.write("<br/>");
    document.write("continue:跳出本次循环,执行下次循环");
    document.write("<br/>");
    for(var i=1;i<=3;i++){
        document.write("<br/>");
        document.write("外层循环i="+i);
        document.write("<br/>");
        for(var j=1;j<=4;j++){
            if(j==3){
                continue;
            }
            document.write("内层循环j="+j);
            document.write(' ');
        }
    }


    document.write("<br/>");
    document.write("<br/>");
    document.write("return:跳出所有循环");
    document.write("<br/>");

    function test(){  //如果没有将for循环加在这个函数里,会报错。
        for(var i=1;i<=3;i++){
            document.write("<br/>");
            document.write("外层循环i="+i);
            document.write("<br/>");
            for(var j=1;j<=4;j++){
                if(j==3){
                    return;
                }
                document.write("内层循环j="+j);
                document.write(' ');
            }
        }
    }
    test();

</script>

输出结果

break:跳出本层循环,执行外层循环
外层循环i=1
内层循环j=1 内层循环j=2 
外层循环i=2
内层循环j=1 内层循环j=2 
外层循环i=3
内层循环j=1 内层循环j=2 

continue:跳出本次循环,执行下次循环
外层循环i=1
内层循环j=1 内层循环j=2 内层循环j=4 
外层循环i=2
内层循环j=1 内层循环j=2 内层循环j=4 
外层循环i=3
内层循环j=1 内层循环j=2 内层循环j=4 

return:跳出所有循环
外层循环i=1
内层循环j=1 内层循环j=2 

相关文章

网友评论

      本文标题:javascript中的break, continue和retu

      本文链接:https://www.haomeiwen.com/subject/dijjvttx.html