平时自己经常在函数里见到return,在switch语句中使用break,而continue则用的不多。
其实这三者都能在for循环中发挥不同的作用,让代码更加灵活。

先说return

return是结束被调函数的执行,结束时候可以return返回值,并且return之后的语句不再执行

如下代码示例:

function fun(){
for (let i = 0; i < 9; i++) {
if(i==5){
return;
console.log('哈哈哈');
}
console.log(i);
}
console.log('星河滚烫');
} fun();
//log: 0 1 2 3 4

可以看出i==5就结束了,而且在return之后的'哈哈哈',没有打印,i=5也没有打印出来,‘星河滚烫’也没有打印,

return是直接跳出了该函数

再说break

break会终止并跳出它所在的循环,进入下一段程序的执行(如果多层循环嵌套,它只跳出自己的这一层循环)

如下代码示例:

function fun(){
for (let i = 0; i < 9; i++) {
if(i==5){
break;
console.log('哈哈哈');
}
console.log(i);
}
console.log('星河滚烫');
} fun();
//log: 0 1 2 3 4 星河滚烫

可以看出i==5时,break结束了循环,并且跳出循环打印了 '星河滚烫'

最后说一下continue

continue会使循环进行到此处时,直接进入下一次循环的入口处 执行下一次循环,注意不是结束循环体。

如下代码示例:

function fun(){
for (let i = 0; i < 9; i++) {
if(i==5){
continue;
console.log('哈哈哈');
}
console.log(i);
}
console.log('星河滚烫');
} fun();
//log: 0 1 2 3 4 6 7 8 9 星河滚烫

只有 5 没有打印,而之后的都打印了出来,说明i==5时后面的都没有执行,直接进入到了之后的循环

总结:

break跳出并结束当前循环体(自己这一层)

continue:此次循环结束,进入下次循环

return: 结束当前函数,进入主调函数继续执行,return后面的代码不再执行;return后可以返回参数。

return break 和continue在for循环中的不同作用的更多相关文章

  1. break和continue在多重循环中使用

    break和continue在多重循环中使用 关于break和continue在java中,break的作用是跳出循环,continue的作用是跳出本次循环. 我们一般情况下,这样使用: public ...

  2. python学习之break和continue在for循环中的使用(案例:打印出10以内的偶数,并且只要前三个偶数)

    运行程序,break是整个程序都跳出 continue则表示跳过当前一次循环,然后继续执行循环

  3. break 和 continue 语句, 以及循环中的 else 子句

    break 语句工作得如同 C 语言一样, 跳出最小的 for 或 while 循环.循环语句可以有一个 else 子句; 该子句会在以下情况被执行: 循环因迭代到列表末尾而终止 (for 语句), ...

  4. java中break和continue跳出指定循环(转载)

    java中break和continue跳出指定循环 java中break和continue可以跳出指定循环,break和continue之后不加任何循环名则默认跳出其所在的循环,在其后加指定循环名,则 ...

  5. Java中break和continue跳出指定循环

    https://www.cnblogs.com/miys/p/b7f6a463bc58785d74a8a7fccd1f1243.html 在Java中,break和continue可以跳出指定循环,在 ...

  6. return, break and continue

    最近学习多线程看到了一个描述不太准确的地方,让我对return break continue个语句的不同开始详细了解了一番,之前只是知道怎么使用,不是很深入研究,基本遇到了跳出就用return来解决全 ...

  7. Scala 封装可break和continue的foreach循环

    发现scala里没有break和continue, 有时候实在是需要的话就要自己try catch异常,代码看起来有点蛋疼, 所以封装了一个可break和continue的foreach. impor ...

  8. Java 循环中标签的作用

    continue和break可以改变循环的执行流程,但在多重循环中,这两条语句无法直接从内层循环跳转到外层循环.在C语言中,可以通过goto语句实现多重循环的跳转,但在非循环结构中使用goto语句会使 ...

  9. Java循环中标签的作用(转)

    转自:http://lihengzkj.iteye.com/blog/1090034 以前不知道在循环中可以使用标签.最近遇到后,举得还是有其独特的用处的.我这么说的意思是说标签在循环中可以改变循环执 ...

随机推荐

  1. 【原创】Linux Mutex机制分析

    背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...

  2. Android JetPack组件-CameraX初探

    CameraX 又是一个 Google 推出的 JetPack 组件 ,是一个新鲜玩意儿,故给大家分享下我在项目中的使用过程心得.. CameraX 是什么? Google 开发者文档 对 Camer ...

  3. 记一次真实的线上事故:一个update引发的惨案!

    目录 前言 项目背景介绍 要命的update 结语 前言   从事互联网开发这几年,参与了许多项目的架构分析,数据库设计,改过的bug不计其数,写过的sql数以万计,从未出现重大纰漏,但常在河边走,哪 ...

  4. qt creator源码全方面分析(4-2)

    目录 global头文件 global.h xx.h global头文件 插件的本质就是动态链接库,对于库,需要导出符号,供用户导入使用.在qt creator的源码中,存在固定的导入导出模式. gl ...

  5. 详解十大经典数据挖掘算法之——Apriori

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是机器学习专题的第19篇文章,我们来看经典的Apriori算法. Apriori算法号称是十大数据挖掘算法之一,在大数据时代威风无两,哪 ...

  6. 学习Vue第二节,v-cloak,v-text,v-html,v-bind,v-on使用

    v-cloak,v-text,v-html,v-bind,v-on使用 <!DOCTYPE html> <html> <head> <meta charset ...

  7. P1750 出栈序列

    这好像是普及难度的吧~ 感觉再次被小学生吊打了........ \(\color{Red}{----------------------=|(●'◡'●)|=我是手动的分割线------------- ...

  8. OpenWrt R2020.3.19 反追踪 抗污染 加速 PSW 无缝集成 UnPnP NAS

    固件说明 基于Lede OpenWrt R2020.3.19版本Lienol Feed及若干自行维护的软件包 结合家庭x86软路由场景需要定制 按照家庭应用场景对固件及软件进行测试,通过后发布 设计目 ...

  9. layui里面的layer模块弹窗,强制居中的方法!!!

    每次调用layer弹窗做动态展示的时候,只要内容不固定或者需要二次渲染 比如layui.form.render()进行渲染的时候 由于弹窗已经出来了,只是content部分的结构改变了宽度或者高度,l ...

  10. SAP ME01创建货源清单

    1业务说明 此文档使用函数:ME_DIRECT_INPUT_SOURCE_LIST创建货源清单 2前台实现 事务代码:ME01 输入抬头信息 保存即可 3代码实现 3.1调用函数 定义参数 字段 调用 ...