浅析JavaScript中break、continue和return的区别


Posted in Javascript onNovember 30, 2016

break

function myBreak() {
for(var i = 0; i < 5; i++) {
if(i == 3) {
break;
}
console.log(i);
}
}
myBreak();

输出:

0
1
2

break: 直接跳出 当前 的循环,从当前循环外面开始执行,忽略循环体中任何其他语句和循环条件测试。它只能跳出一层循环,如果你的循环是嵌套循环,那么你需要按照你嵌套的层次,逐步使用break来跳出。

continue

function myContinue() {
for(var i = 0; i < 5; i++) {
if(i == 3) {
continue;
}
console.log(i);
}
}
myContinue();

输出:

0
1
2
4

continue: 终止当前的一次循环过程,其 不 跳出循环,而是继续往下判断循环条件执行语句。

只能结束循环中的一次过程,但不能终止循环继续进行。

return

function myReturn() {
for(var i = 0; i < 5; i++) {
if(i == 3) {
return i;
}
console.log(i);
}
}
var s = myReturn();
console.log("s: " + s);

输出:

0
1
2
s: 3

return: 从当前的方法中退出,返回到该调用的方法的语句处,继续执行。

总结

1、return语句的作用

(1) return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行

(2) return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致,可以使用强制类型转换来是数据类型一致

(3) return 当方法说明中用void声明返回类型为空时,应使用这种格式,不返回任何值。

2、break语句的作用

(1) 只能在循环体内和switch语句体内使用break语句。

(2) 当break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体。

(3) 当break出现在循环体中,但并不在switch语句体内时,则在执行break后,跳出本层循环体。

(4) 在循环结构中,应用break语句使流程跳出本层循环体,从而提前结束本层循环

3、continue语句作用

(1) continue语句的一般形式为:continue;

(2) 其作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环的条件判定。

(3) 注意:执行continue语句并没有使整个循环终止。在while和do-while循环中,continue语句使得流程直接跳到循环控制条件的测试部分 ,然后决定循环是否继续进行。

(4) 在for 循环中,遇到continue后,跳过循环体中余下的语句,而去对for语句中的“表达式3”求值,然后进行“表达式2”的条件测试,

最后根据“表达式2”的值来决定for循环是否执行。在循环体内,不论continue是作为何种语句中的语句成分,都将按上述功能执行,这点与break有所不同

以上所述是小编给大家介绍的JavaScript中break、continue和return的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
使用typeof判断function是否存在于上下文
Aug 14 Javascript
多种JQuery循环滚动文字图片效果代码
Jun 23 Javascript
Javascript的表单验证-揭开正则表达式的面纱
Mar 18 Javascript
JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解
Nov 29 Javascript
jQuery Validate让普通按钮触发表单验证的方法
Dec 15 Javascript
jQuery插件DataTable使用方法详解(.Net平台)
Dec 22 Javascript
switchery按钮的使用方法
Dec 18 Javascript
electron中使用bootstrap的示例代码
Nov 06 Javascript
傻瓜式vuex语法糖kiss-vuex整理
Dec 21 Javascript
js实现继承的方法及优缺点总结
May 08 Javascript
javascript for循环性能测试示例
Aug 07 Javascript
Javascript作用域和作用域链原理解析
Mar 03 Javascript
JavaScript的变量声明提升问题浅析(Hoisting)
Nov 30 #Javascript
浅析script标签中的defer与async属性
Nov 30 #Javascript
JavaScript 字符串常用操作小结(非常实用)
Nov 30 #Javascript
js实现表单提交后不重新刷新当前页面
Nov 30 #Javascript
html判断当前页面是否在iframe中的实例
Nov 30 #Javascript
vue.js实现表格合并示例代码
Nov 30 #Javascript
浅谈jquery的html方法里包含特殊字符的处理
Nov 30 #Javascript
You might like
php的header和asp中的redirect比较
2006/10/09 PHP
php win下Socket方式发邮件类
2009/08/21 PHP
linux下安装php的memcached客户端
2014/08/03 PHP
php多个文件及图片上传实例详解
2014/11/10 PHP
PHP MVC框架路由学习笔记
2016/03/02 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
PHP http请求超时问题解决方案
2020/11/13 PHP
用js遍历 table的脚本
2008/07/23 Javascript
JS 面向对象之神奇的prototype
2011/02/26 Javascript
服务器端的JavaScript脚本 Node.js 使用入门
2012/03/07 Javascript
js获取当前日期代码适用于网页头部
2013/06/27 Javascript
jquery easyui中treegrid用法的简单实例
2014/02/18 Javascript
JavaScript框架(iframe)操作总结
2014/04/16 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
2015/04/12 Javascript
footer定位页面底部(代码分享)
2017/03/07 Javascript
Vue.js 父子组件通信的十种方式
2018/10/30 Javascript
基于JavaScript实现贪吃蛇游戏
2020/03/16 Javascript
详解如何在Javascript中使用Object.freeze()
2020/10/18 Javascript
如何实现vue的tree组件
2020/12/03 Vue.js
原生JS实现音乐播放器的示例代码
2021/02/25 Javascript
Python设计模式编程中解释器模式的简单程序示例分享
2016/03/02 Python
Python实现多线程/多进程的TCP服务器
2019/09/03 Python
python爬虫-模拟微博登录功能
2019/09/12 Python
python异常处理和日志处理方式
2019/12/24 Python
python实现贪吃蛇双人大战
2020/04/18 Python
TCP/IP的分层模型
2013/10/27 面试题
销售文员的岗位职责
2013/11/20 职场文书
数控技术专业毕业自荐书范文
2014/02/05 职场文书
出生公证书样本
2014/04/04 职场文书
经营管理策划方案
2014/05/22 职场文书
承诺函范文
2015/01/21 职场文书
导游词300字
2015/02/13 职场文书
2016幼儿园中班开学寄语
2015/12/03 职场文书
小学一年级语文教学反思
2016/03/03 职场文书
GTX1660显卡搭配显示器推荐
2022/04/19 数码科技
Golang gRPC HTTP协议转换示例
2022/06/16 Golang