博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Javascript for循环指定锚点跳转
阅读量:5240 次
发布时间:2019-06-14

本文共 728 字,大约阅读时间需要 2 分钟。

在某些使用多层嵌套for循环的场合里

会用到break和continue来中途跳转循环

break是跳出整个循环

continue是跳出当前循环,继续下次循环

而多层for循环嵌套里使用这两个关键字默认只能跳到当前for循环的上一层

如果我们需要跳到上一层的上一层,或者跳到顶层呢?

javascript为我们提供了一个循环跳转的标签 ,感觉有点类似C语言里的goto语句

1 here:2  for(var i=0;i<5;i++){3   for(var j=0;j<5;j++){4    if(i===2&&j===2){5      break here;6    }7    console.log(i,j);8   }9  }

 

 
上述代码中的here可以自己定义名称,另外一定要看清楚here后面是冒号可不是分号!
 
运行可以发现输出
0,00,10,20,30,41,01,11,21,31,42,02,1

 

可以看到循环到i=2,j=2时,直接退出了全部循环,而不是仅仅退出内层循环
 
为了更好的对比效果,如果我们去掉break here后面的here
运行后可以发现输出
0,00,10,20,30,41,01,11,21,31,42,02,13,03,1... //省略3,2~4,34,4

 

此时break仅仅跳出了内层循环,函数会继续从外层循环i=3开始继续循环
 
这个输出结果显然和continue here 产生了一样的效果
 
(break)前者是跳出当前层循环,外层循环继续
(continue here)后者是跳到最外层循环继续
 
 
 
 
 

转载于:https://www.cnblogs.com/raoyunxiao/p/4769083.html

你可能感兴趣的文章
数组filter()参数详解,巧用filter()数组去重
查看>>
查询项目中未被使用的js、css和图片
查看>>
Cookie.js
查看>>
Django Blog学习笔记(一)
查看>>
什么是“堆”,"栈","堆栈","队列",它们的区别
查看>>
什么是lambda函数?它有什么好处?
查看>>
在线的IDE(Ideone)支持Java/Python/Go/D
查看>>
第4次作业
查看>>
hash 哈希
查看>>
淘宝的技术博客
查看>>
Linux commands
查看>>
JVM ,Java paper
查看>>
https://www.callicoder.com/java-8-completablefuture-tutorial/
查看>>
YARN Resource Management
查看>>
作业5:需求分析
查看>>
socket入门
查看>>
[工作中的设计模式]装饰模式decorator
查看>>
swift objective-c混编操作
查看>>
黑盒测试方法
查看>>
创建Java程序并设置快捷提示
查看>>