转:

【疑点】js中的break,continue和return到底怎么用?

为什么要说个?好像很简单,但是我也会迷糊,不懂有时候为什么要用return,然而break和continue也经常和他放在一起。

所以就一起来说一说,这三个看起来很简单,却常常会出错的关键词的具体用法。

主要从以下几个方面来详细论述。

1、3个关键词的含义和比较。

2、举例说明其实际应用。


 

3个关键词的含义和比较

在 break,continue和return 三个关键字中, break,continue是化为一类的,return 是函数返回语句,但是返回的同时也将函数停止。

相同之处:三个都会将此时进行的语句停止。

不同之处:

1、break:是立即结束语句,并跳出语句,进行下个语句执行。

2、continue:是停止当前语句,并从头执行该语句。

3、return:停止函数。

4、使用的语句环境不一样,break和continue是用在循环或switch语句中,return是用在函数语句中。


举例说明其实际应用

break和continue

这两个应用的范围是退出循环或者switch语句,在其他地方使用会导致错误;

1、break:由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。

使用如下:

//输出结果:12345

当i=6的时候,直接退出for这个循环。这个循环将不再被执行!直接进入下一个语句。

2、continue:和break语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。

continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!

//输出结果:1234578910

当i=6的时候,直接跳出本次for循环。下次继续执行。

return语句

return语句就是用于指定函数返回的值。

return语句应用范围只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误!

1、返回控制与函数结果

语法为:return 表达式;

语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果。

2、返回控制

无函数结果,语法为:return;

在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为。

Return False 就相当于终止符,Return True 就相当于执行符。 返回的false和true通常用在需要进行布尔类型判断时。

比如你单击一个链接,除了触发你的onclick事件(如果你指定的话)以外还要触发一个默认事件就是执行页面的跳转。所以如果

你想取消对象的默认动作就可以return false。

我们也常用return false来阻止提交表单或者继续执行下面的代码。

即使a函数返回return false 阻止提交了,但是不影响 b()以及 c()函数的执行。在Test()函数里调用a()函数,那面里面

return false 对于Test()函数来说,只是相当于返回值。而不能阻止Test()函数执行。

总之:return false 只在当前函数有效,不会影响其他外部函数的执行。

总结

return true;返回正常的处理结果;终止处理。

return false;返回错误的处理结果;终止处理;阻止提交表单;阻止执行默认的行为。

return;把控制权返回给页面。

【疑点】js中的break,continue和return到底怎么用?的更多相关文章

  1. js中的break,continue和return到底怎么用?

    为什么要说个?好像很简单,但是我也会迷糊,不懂有时候为什么要用return,然而break和continue也经常和他放在一起. 所以就一起来说一说,这三个看起来很简单,却常常会出错的关键词的具体用法 ...

  2. js中的break,continue和return的用法及区别

    为什么要说个?好像很简单,但是我也会迷糊,不懂有时候为什么要用return,然而break和continue也经常和他放在一起. 所以就一起来说一说,这三个看起来很简单,却常常会出错的关键词的具体用法 ...

  3. js中的break,continue,return

    js中的break,continue, return (转) 面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢 ...

  4. [转帖]Shell脚本中的break continue exit return

    Shell脚本中的break continue exit return 转自:http://www.cnblogs.com/guosj/p/4571239.html break结束并退出循环 cont ...

  5. js中的break ,continue, return (转)

    面向对象编程语法中我们会碰到break ,continue, return这三个常用的关键字,那么关于这三个关键字的使用具体的操作是什么呢?我们在使用这三关键字的时候需要注意和需要理解的规则是什么呢? ...

  6. Shell脚本中的break continue exit return

    转自:http://www.cnblogs.com/guosj/p/4571239.html break结束并退出循环 continue在循环中不执行continue下面的代码,转而进入下一轮循环 e ...

  7. js 中的break continue return

    break:跳出整个循环 1.当i=6时,就跳出了整个循环,此for循环就不继续了: continue:跳出当前循环,继续下一次循环: return :指定函数返回值 1.在js当中,常使用retur ...

  8. js中退出语句break,continue和return 比较 (转载)

    在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是返回的同时也将函数停止 首先:break和continue两个一 ...

  9. js中退出语句break,continue和return 比较

    js中退出语句break,continue和return 比较 在 break,continue和return 三个关键字中, break,continue是一起的,return 是函数返回语句,但是 ...

随机推荐

  1. vue 打包后,后缀名为.woff等字体问题不能用解决办法

    1.打开 build / webpack.prod.conf.js ,找到 module: { rules: utils.styleLoaders({ sourceMap: config.build. ...

  2. 12、JAVA内存模型与线程

    一.JMM 有序性,可见性,原子性 synchorize :3个性都有: volatile:保证可见性+禁止指令重排: 二.线程的五种状态 面向过程与面向对象的差别 面向过程:站在计算机的角度分析和解 ...

  3. unity纯粹物理驱动方式

    首先见官方文档 In most cases you should not modify the velocity directly, as this can result in unrealistic ...

  4. Unity3d-通过简单示例来理解Time.deltaTime

    转载文章: Unity3d-通过简单示例来理解Time.deltaTime 2018年04月21日 18:04:14 Black_Window 阅读数:926 标签: UnityTime 更多 个人分 ...

  5. mark一下岗位

    一.中国移动杭州研发中心——测试开发工程师 https://campusresume.zhaopin.com/resume/14375/1   等内推信息 岗位描述:作为产品的质量守护者,在全面理解被 ...

  6. [T-ARA][너너너][你你你]

    歌词来源:http://music.163.com/#/song?id=22704480 作曲 : Cheang Hai Kee [作曲 : Cheang Hai Kee] 作词 : Cheang H ...

  7. 求二维数组联通子数组和的最大值 (联通涂色) beta!

    算法十分臃肿,效率捉鸡,不知用了多少循环,还有bug...任重道远,编程之美. 思想:按行遍历,找出每行的最大子数组.若行间都联通,行最大子数组相加后,再加上独立的正数.若行间不连通,找出较大子路径, ...

  8. RYU 灭龙战 fourth day (2)

    RYU 灭龙战 fourth day (2) 前言 之前试过在ODL调用他们的rest api,一直想自己写一个基于ODL的rest api,结果还是无果而终.这个小目标却在RYU身上实现了.今日说法 ...

  9. DataGridView显示行号-RowPostPaint

    DataGridView控件在显示数据时,我们有时候需要显示行号,以便检索查看方便使用. 但DataGridView默认没有设置显示行号的属性. 此时我们只要在DataGridView的RowPost ...

  10. Alpha 冲刺五

    团队成员 051601135 岳冠宇 051604103 陈思孝 031602629 刘意晗 031602248 郑智文 031602234 王淇 会议照片 项目燃尽图 项目进展 暂无实质性进展. 项 ...