平时自己经常在函数里见到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. 关于C primer plus 的学习计划(暂停)

    最近想学数据结构,但是C的基础不够好,想借着C primer plus补一下基础.怎料第一章看的还挺快,到第二章看了二十多天.现在改改阅读方式:每日在这里添加进度,然后精看例题习题和章总结,其它简略看 ...

  2. 如何 Laravel 中验证 zip 压缩包里的文件?

    在 Laravel 程序中上传文件时,请求验证可以很好验证上传的文件.你可以要求上传文件必须为 图片 , 也可以限制文件字节 大小 , 也可以根据 mime types 或者 文件扩展名 过滤文件. ...

  3. js循环数组方法some和forEach怎么用

    forEach不支持break和return.一般普通循环都是用forEach ar arr1=["aa","bb","aa"," ...

  4. STM32 CubeIDE快速创建工程(图文详解)

    使用STM32CubeIDE快速创建STM32的HAL库工程. 文章目录 1 STM32CubeIDE Home 2 生成工程 3 程序下载 1 STM32CubeIDE Home 进入到官网的下载界 ...

  5. ApplicationInsights迁移国内躺的坑

    由于之前有段时间访问国际版的Application Insights实在是慢,而且又不是每个人都有梯子,然后国内版大概在去年(2019)六七月左右已经上线,想着也有一段时日了,要么就迁了吧. 然后实际 ...

  6. 【原理探究】女朋友问我ArrayList遍历时删除元素的正确姿势是什么?

    简介 我们在项目开发过程中,经常会有需求需要删除ArrayList中的某个元素,而使用不正确的删除方式,就有可能抛出异常.或者在面试中,会遇到面试官询问遍历时如何正常删除元素.所以在本篇文章中,我们会 ...

  7. C# -- WebClient自动获取web页面编码并转换

    C# -- WebClient自动获取web页面编码并转换 抽个时间,写篇小文章,最近有个朋友,用vb开发一个工具,遇到WebClient获取的内容出现乱码,可惜对vb不是很熟悉,看了几分钟vb的语法 ...

  8. 初识spring boot maven管理--使用spring-boot-starter-parent

    springboot官方推荐我们使用spring-boot-starter-parent,spring-boot-starter-parent包含了以下信息: 1.使用java6编译级别 2.使用ut ...

  9. react 动态渲染echarts折线图,鼠标放大缩小

    //折线图组件import React,{Component} from 'react'; import ReactEcharts from 'echarts-for-react'; class Ec ...

  10. ios中fixed元素在滚动布局中的延时渲染问题

    在之前做的一个demo中,有个视图是内滚动的,里边有个bar用了fixed,不是fixed在最外层视图的顶部和底部,在微信/safari/chrome/其他浏览器app上都没出现问题. 然后今天,我把 ...