JavaScript基础知识-break和continue

简介: 这篇文章介绍了JavaScript中的break和continue关键字,并通过多个示例展示了如何使用它们来控制循环流程,包括如何使用标签来指定跳出特定的循环。

作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.break关键字会立即终止离他最近的那个循环语句

1>.JavaScript源代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>break和continue</title>

        <script type="text/javascript">

            for(var i=0;i<5;i++){
                document.write("@外层循环" + i + "<br />");
                for(var j=0;j<5;j++){
                    document.write("内层循环" + i + "<br />");
                }
            }

            document.write("<hr />")

            /**
             *     break关键字可以用来退出switch或循环语句,不能在if语句中使用break和continue。
             * 
             *     break关键字会立即终止离他最近的那个循环语句。
             */
            for(var i=0;i<5;i++){
                document.write("@外层循环" + i + "<br />");
                for(var j=0;j<5;j++){
                    break;
                    document.write("内层循环" + i + "<br />");
                }
            }
        </script>
    </head>
    <body>
    </body>
</html>

2>.浏览器打开以上代码渲染结果

二.在break后跟着一个lable,这样break将会结束指定的循环而不是最近的

1>.JavaScript源代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>break和continue</title>

        <script type="text/javascript">
            /**
             *     可以为循环创建一个label来标识当前的循环,语法格式为如下:
             *         label:循环语句
             *     使用break语句时,可以在break后跟着一个lable,这样break将会结束指定的循环而不是最近的
             */

            outer:
            for(var i=0;i<5;i++){
                document.write("@外层循环" + i + "<br />");
                for(var j=0;j<5;j++){
                    break outer;
                    document.write("内层循环" + i + "<br />");
                }
            }
        </script>
    </head>
    <body>
    </body>
</html>

**2>.浏览器打开以上代码渲染结果**

三.continue也是默认只会对离他最近的循环起作用。

1>.JavaScript源代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>break和continue</title>

        <script type="text/javascript">
            /**
             *    continue关键字可以用来跳过当前循环 ,同样continue也是默认只会对离他最近的循环起作用。
             */
            for(var i=0;i<5;i++){
                document.write(i + "<br />");
                if (i === 2){
                    continue;
                }
            }

            document.write("<hr />")


            for(var i=0;i<5;i++){
                document.write("@外层循环" + i + "<br />");
                for(var j=0;j<5;j++){
                    if (j === 1){
                        continue;
                    }
                    document.write("@内层循环" + j + "<br />");
                }
            }
        </script>
    </head>
    <body>
    </body>
</html>

2>.浏览器打开以上代码渲染结果

四.在continue后跟着一个lable,这样break将会结束指定的循环而不是最近的**

1>.JavaScript源代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>break和continue</title>

        <script type="text/javascript">
            /**
             *    continue关键字可以用来跳过当前循环 ,同样continue也是默认只会对离他最近的循环起作用。
             */
            for(var i=0;i<5;i++){
                document.write("@外层循环" + i + "<br />");
                for(var j=0;j<5;j++){
                    if (j === 1){
                        continue;
                    }
                    document.write("@内层循环" + j + "<br />");
                }
            }

            document.write("<hr />")

            outer:
            for(var i=0;i<5;i++){
                document.write("@外层循环" + i + "<br />");
                for(var j=0;j<5;j++){
                    if (j === 1){
                        continue outer;
                    }
                    document.write("@内层循环" + j + "<br />");
                }
            }

        </script>
    </head>
    <body>
    </body>
</html>

2>.浏览器打开以上代码渲染结果

五.打印1-100000之间的所有质数并计时

1>.JavaScript源代码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>break和continue</title>

        <script type="text/javascript">
            /**
             *     测试如下程序的性能,在程序执行之前开启计时器.
             *         onsole.time("计时器名称");
             *     一个网页中可能由多个计时器,因此它需要一个字符串作为参数,这个字符串将会作为计时器的标识。    
             */
            console.time("test");


            /**
             *     打印出1-100000之间所有的质数
             */
            for(var i=2;i<=100000;i++){
                var flag = true;

                //匹配的终止条件是对i开方对应的值,这样可以减少循环的次数
                for(var j=2;j<Math.sqrt(i);j++){
                    if(i%j == 0){
                        //如果进入则证明i不是质数,修改flag值为flase
                        flag = false;
                        //一旦进入判断,则证明i不可能时质数了,此时循环再执行已经没有任何意义了,使用break来结束循环
                        break;
                    }
                }

                //如果时质数,则打印i的值
                if(flag){
                    document.write(i+ "<br/>");
                }
            }


            //终止计时器,它也需要一个计时器的名称作为参数,告诉它需要停止哪个计时器。
            console.timeEnd("test")

        </script>
    </head>
    <body>
    </body>
</html>

2>.浏览器打开以上代码渲染结果

目录
相关文章
|
7天前
|
JavaScript 前端开发
JavaScript break 和 continue 语句
JavaScript break 和 continue 语句
10 3
|
1月前
|
JavaScript 前端开发
JavaScript 函数中break,continue,return 的区别
JavaScript 函数中break,continue,return 的区别
26 0
|
4月前
|
JavaScript
原生js实现【longPressKey】长按键盘任意键(或组合键)3秒触发自定义事件(以Pause/Break键为例)
原生js实现【longPressKey】长按键盘任意键(或组合键)3秒触发自定义事件(以Pause/Break键为例)
|
4月前
|
JavaScript 前端开发
|
前端开发
前端知识案例25-javascript基础语法-break和continue
前端知识案例25-javascript基础语法-break和continue
41 0
前端知识案例25-javascript基础语法-break和continue
|
JavaScript
js基础笔记学习60-break和continnue
js基础笔记学习60-break和continnue
61 0
js基础笔记学习60-break和continnue
|
JavaScript 前端开发
JavaScript中break和continune的区别
break和continue的区别 break和continue都为循环代码做出了更加严格的控制手段,其中break的作用是立即退出这个循
|
JavaScript 前端开发
JavaScript: switch语句、break\case !
JavaScript: switch语句、break\case !
163 0
|
JavaScript 前端开发
JavaScript的break和continue语句的使用和区别
JavaScript的break和continue语句的使用和区别 JavaScript中break 和 continue都是用来控制循环结构,即用在for循环和while循环中。区别在于: break 语句用于跳出循环。 continue 用于跳过循环中的一个迭代。 1.break语句 break语句会终止循环并且跳出循环 for(var j=0;j&lt;5;j++){ if(j==3){ break; } console.log(j);//0 1 2 }
|
2月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
70 2