浅析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 相关文章推荐
jQuery源码分析-04 选择器-Sizzle-工作原理分析
Nov 14 Javascript
javascript批量修改文件编码格式的方法
Jan 27 Javascript
Eclipse配置Javascript开发环境图文教程
Jan 29 Javascript
Es6 写的文件import 起来解决方案详解
Dec 13 Javascript
vue组件中点击按钮后修改输入框的状态实例代码
Apr 14 Javascript
微信小程序开发之toast提示插件使用示例
Jun 08 Javascript
webpack实用小功能介绍
Jan 02 Javascript
浅谈React 服务器端渲染的使用
May 08 Javascript
基于Vue+ElementUI的省市区地址选择通用组件
Nov 20 Javascript
微信小程序接入腾讯云验证码的方法步骤
Jan 07 Javascript
Vue+Java 通过websocket实现服务器与客户端双向通信操作
Sep 22 Javascript
js实现弹幕墙效果
Dec 10 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 抽象类的简单应用
2011/09/06 PHP
php通过COM类调用组件的实现代码
2012/01/11 PHP
php实现中文转数字
2016/02/18 PHP
PHP检测链接是否存在的代码实例分享
2016/05/06 PHP
Firefox 无法获取cssRules 的解决办法
2006/10/11 Javascript
Javascript 复制数组实现代码
2009/11/26 Javascript
js模仿html5 placeholder适应于不支持的浏览器
2013/01/13 Javascript
javascript解决innerText浏览器兼容问题思路代码
2013/05/17 Javascript
利用JavaScript实现新闻滚动效果(实例代码)
2013/11/27 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
响应式表格之固定表头的简单实现
2016/08/26 Javascript
JavaScript实现三级联动菜单效果
2017/08/16 Javascript
基于Bootstrap table组件实现多层表头的实例代码
2017/09/07 Javascript
vuejs使用递归组件实现树形目录的方法
2017/09/30 Javascript
jQuery实现动态向上滚动
2020/12/21 jQuery
[40:55]DOTA2上海特级锦标赛主赛事日 - 2 败者组第二轮#4Newbee VS Fnatic
2016/03/03 DOTA
使用Python进行稳定可靠的文件操作详解
2013/12/31 Python
python 将print输出的内容保存到txt文件中
2018/07/17 Python
Flask-Mail用法实例分析
2018/07/21 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
2018/12/12 Python
一篇文章弄懂Python中所有数组数据类型
2019/06/23 Python
Python+PyQt5实现灭霸响指功能
2020/05/25 Python
Python建造者模式案例运行原理解析
2020/06/29 Python
鲜为人知的HTML5语音合成功能
2019/05/17 HTML / CSS
html标签之Object和EMBED标签详解
2013/07/04 HTML / CSS
Fossil美国官网:Fossil手表、手袋、珠宝及配件
2017/02/01 全球购物
Gap英国官网:Gap UK
2018/07/18 全球购物
Molly Bracken法国电子商店:法国女性时尚品牌
2019/07/24 全球购物
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
股权收购意向书
2014/04/01 职场文书
班主任工作实习计划
2015/01/16 职场文书
师德承诺书
2015/01/20 职场文书
民事代理词范文
2015/05/25 职场文书
国际贸易实训总结
2015/08/03 职场文书
新员工入职感想
2015/08/07 职场文书
详解MySQL InnoDB存储引擎的内存管理
2021/04/08 MySQL