zoukankan      html  css  js  c++  java
  • js break continue

    for 循环从 1 到 10 迭代变量 i。在循环主体中,if 语句将(使用取模运算符)检查 i 的值是否能被 5 整除。如果能被 5 整除,将执行 break 语句。alert 显示 "4",即退出循环前执行循环的次数。
    var iNum = 0; for (var i=1; i<10; i++) { if (i % 5 == 0) { break; } iNum++; } alert(iNum); //输出 "4"



    alert 将显示 "8",即执行循环的次数。可能执行的循环总数为 9,不过当 i 的值为 5 时,将执行 continue 语句,会使循环跳过表达式 iNum++,返回循环开头。
    var iNum = 0;
    
    for (var i=1; i<10; i++) {
      if (i % 5 == 0) {
        continue;
      }
      iNum++;
    }
    alert(iNum);	//输出 "8"


    break终止当前for循环的本次循环,进入下次循环

    var num=0;
    for(var i=0;i<10;i++){
    for(var j=0;j<10;j++){
    if(i==5 && j==5){
    break;
    }
    num++;
    }
    }
    alert(num);//95

    标签 outermost 表示的是第一个 for 语句。正常情况下,每个 for 语句执行 10 次代码块,这意味着 iNum++ 正常情况下将被执行 100 次,在执行完成时,iNum 应该等于 100。这里的 break 语句有一个参数,即停止循环后要跳转到的语句的标签。这样 break 语句不止能跳出内部 for 语句(即使用变量 j 的语句),还能跳出外部 for 语句(即使用变量 i 的语句)。因此,iNum 最后的值是 55,因为当 i 和 j 的值都等于 5 时,循环将终止。

    var iNum = 0;

    outermost:
    for (var i=0; i<10; i++) {
    for (var j=0; j<10; j++) {
    if (i == 5 && j == 5) {
    break outermost;
    }
    iNum++;
    }
    }

    alert(iNum);//55

    continue 语句会迫使循环继续,不止是内部循环,外部循环也如此。当 j 等于 5 时出现这种情况,意味着内部循环将减少 5 次迭代,致使 iNum 的值为 95。

    var iNum = 0;
    
    outermost:
    for (var i=0; i<10; i++) {
      for (var j=0; j<10; j++) {
        if (i == 5 && j == 5) {
        continue outermost;
      }
      iNum++;
      }
    }
    
    alert(iNum);	//输出 "95"

    提示:可以看出,与 break 和 continue 联合使用的有标签语句非常强大,不过过度使用它们会给调试代码带来麻烦。要确保使用的标签具有说明性,同时不要嵌套太多层循环。
  • 相关阅读:
    docker gitlab意外强制关机导致gitlab启动后报错unexpected end of JSON input
    Dockerfile实践记录
    html 打开新页面
    【rt-thread】2、尝试用ENV添加18b20传感器
    【rt-thread】1、快速建立rt-thread nano最小裁剪工程
    Git pull 强制覆盖本地文件
    *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS
    51单片机局部变量占用ram的问题
    【乐为物联】1、初识乐联
    Wing-AEP平台LWM2M设备接入
  • 原文地址:https://www.cnblogs.com/xiaotaiyang/p/4377661.html
Copyright © 2011-2022 走看看