1. break
    跳出代码块或循环

    var i = 0;
    while ( i <= 10){
    console.log(' i ');
    i ++;
    if ( i === 5 ) break;
    }
    // 0 1 2 3 4
    for (var i = 0; i < 5; i++) {
    console.log(i);
    if (i === 3)
    break;
    }
    //
    //
    //
    //
  2. continue
    continue语句用于立即终止本轮循环,返回循环结构的头部,开始下一轮循环。
    var i = 0;
    
    while (i < 100){
    i++;
    if (i % 2 === 0) continue;
    console.log('i 当前为:' + i);
    }

    上面代码只有在i为奇数时,才会输出i的值。如果i为偶数,则直接进入下一轮循环。

  3. 标签(label)
    语句的前面有标签(label),相当于定位符,用于跳转到程序的任意位置,标签的格式如下。

    label:
    语句

    标签可以是任意的标识符,但不能是保留字,语句部分可以是任意语句。

    标签通常与break语句和continue语句配合使用,跳出特定的循环。

    top:
    for (var i = 0; i < 3; i++){
    for (var j = 0; j < 3; j++){
    if (i === 1 && j === 1) break top;
    console.log('i=' + i + ', j=' + j);
    }
    }
    // i=0, j=0
    // i=0, j=1
    // i=0, j=2
    // i=1, j=0

    上面为双重循环,break命令后加上了top标签(注意,top不用加引号),满足条件时,直接跳出双重循环,如果break语句后不使用标签,只能跳出内层循环,进入下一次的外层循环。
    标签也可以跳出代码块

    foo: {
    console.log(1);
    break foo;
    console.log('本行不会输出');
    }
    console.log(2);
    //
    //

    上面代码执行到break foo,就会跳出区块。
    continue语句也可以与标签配合使用。

    top:
    for (var i = 0; i < 3; i++){
    for (var j = 0; j < 3; j++){
    if (i === 1 && j === 1) continue top;
    console.log('i=' + i + ', j=' + j);
    }
    }
    // i=0, j=0
    // i=0, j=1
    // i=0, j=2
    // i=1, j=0
    // i=2, j=0
    // i=2, j=1
    // i=2, j=2

    continue命令后面有一个标签名,满足条件时,会跳过当前循环,直接进入下一轮外层循环。如果continue语句后面不使用标签,则只能进入下一轮的内层循环。
    原文链接:https://wangdoc.com/javascript/basic/grammar.html

break , continue 和 标签 跳出循环的更多相关文章

  1. 06_java基础知识——break/continue和标签的配合使用

    package com.huawei.test.java03; /** * This is Description * * @author * @date 2018/08/29 */ public c ...

  2. continue,break以及加上标签的使用(goto思路)

    代码例子在java编程思想70-73页.这里只是想做做总结 java中需要用到标签的唯一理由就是因为由循环嵌套的存在,而且想从多层嵌套循环中break或者continue. 因此,标签只能放在循环前面 ...

  3. Java带标签的break 和带标签的continue

    最开始没有学习java 学习的是C语言然后工作开始用java,但当时并没有仔细看过java的书籍,也是大致一翻就看跟C语言很像,了解了基本语法就没有深究了,今天看书开始发现之前没有了解过的语法 带标签 ...

  4. Java中的break,continue关于标签的用法(转载)

    Java的控制循环结构中是没有关键字goto的,这种做法有它的好处,它提高了程序流程控制的可读性,但是也有不好的地方,它降低了程序流程控制的灵活性,所以说,“上帝是公平的”.所以,Java为了弥补这方 ...

  5. shell编程学习笔记(十二):Shell中的break/continue跳出循环

    在循环遍历中,可以添加对应判断条件跳出循环,跳出循环可以使用break/continue,这个跟java语言是一样的,break是指跳出整个循环,continue是指跳出当前循环体,继续下一项循环. ...

  6. Java中带标签的break,continue

    首先不带标签的break,continue 就不介绍了.大家平时用的最多的也就是这样的情况了. 首先Java中没有goto,但是可以利用带标签的break, continue来实现类似的跳转. 首先来 ...

  7. Java中break、continue及标签等跳转语句的使用[上]

    java 中跳转语句使用break.continue和标签,各自或组合完成相应的功能. 今天做题时遇到关于标签命名规范,顺便将跳转语句语法都看了一遍,很有收获. 在<Java编程思想>一书 ...

  8. js跳出循环的方法区别( break, continue, return ) 及 $.each 的(return true 和 return false)

    js编程语法之break语句: break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句. 由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的 ...

  9. PHP中跳出循环break,continue,return,exit的区别

    1. return 语句的作用       (1) return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行.       (2) return 返回一个值给调用该方法的语句,返回值的数 ...

随机推荐

  1. kubernetes报错

    错误信息:执行yaml文件后,服务在运行,但是提示命令找不到 原因:没有环境,相当于只有一个快捷方式 环境目录为/usr/local/bin 解决办法:将/etc/ansible/bin下的文件都拷贝 ...

  2. mysql 中字符串拼接,查询sql语句总结

    DELIMITER $$ USE `ld_wpfmgl_sys`$$ DROP PROCEDURE IF EXISTS `code_query`$$ CREATE DEFINER=`root`@`%` ...

  3. 记录常用的linux命令

    原文链接:https://www.cnblogs.com/suger43894/p/11024594.html 系统信息相关 date 显示系统日期 cat /proc/mounts 显示已加载的文件 ...

  4. Python3-unittest测试框架之Mock接口联调

    unittest测试框架之Mock接口联调 unittest.mock 是一个用于测试的Python库.它允许使用mock对象替换受测试系统的部分,并对它们如何已经被使用进行断言. Mock使用前提 ...

  5. 二进制搭建一个完整的K8S集群部署文档

    服务器规划 角色 IP 组件 k8s-master1 192.168.31.63 kube-apiserver kube-controller-manager kube-scheduler etcd ...

  6. final关键字和static关键字

    final关键字:最终态--修饰成员变量,成员方法,类 final修饰变量: 基本类型变量:该变量为常量不能被赋值 引用类型变量:该地址不能被概变 地址不能被概变的原因: final Student ...

  7. leetcood学习笔记-13

    错误记录 class Solution: def romanToInt(self, s: str) -> int: d = {'I':1,'V':5,'X':10,'L':50,'C':100, ...

  8. bootstrap相关使用

    如果想做成响应式效果,使用栅格系统产生 小于768手机端 : col-xs- 大于768小于992平板 : col-sm- 大于992小于1200 : col-md- 大于1200 : col-lg- ...

  9. springCloud参考资料

    官网: http://spring.io/projects/spring-cloud 各组件说明(中文版):https://springcloud.cc/spring-cloud-netflflix. ...

  10. NOIP模拟测试29(A)

    T1: 题目大意:有一张有向无环图,第$x$次经过边$i$的代价为$a_ix+b_i$,最多经过$c_i$次,起点为1,$s$个点可作为终点,求走$k$次的最小代价. 我们新建一个汇点,将所有可做为终 ...