JavaScript中的break,continue和return的用法及区别
首先感谢(李星儒の)的分享
这三个看起来很简单,却常常会出错的关键词的具体用法。
主要从以下几个方面来详细论述。
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语句才是合法的。
使用如下:
for(var i=1;i<=10;i++){
if(i==6){
break;
}
console.log(i);
}
//输出结果:12345
当i=6的时候,直接退出for这个循环。这个循环将不再被执行!直接进入下一个语句。
2、continue:和break语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。
continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!
for(var i=1;i<=10;i++){
if(i==6){
continue;
}
console.log(i);
}
//输出结果:1234578910
当i=6的时候,直接跳出本次for循环。下次继续执行。
return语句
return语句就是用于指定函数返回的值。
return语句应用范围只能出现在函数体内,出现在代码中的其他任何地方都会造成语法错误!
1、返回控制与函数结果
语法为:return 表达式;
语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果。
function haha(num){
if(num>9){
return '笑岔气了';
}else{
return '哈';
}
}
for(var i=0;i<=10;i++){
console.log(haha(i),i);
}
输出:
哈 0
哈 1
哈 2
哈 3
哈 4
哈 5
哈 6
哈 7
哈 8
哈 9
笑岔气了 10
2、返回控制
无函数结果,语法为:return;
在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为。
return false 就相当于终止符,return true 就相当于执行符。 返回的false和true通常用在需要进行布尔类型判断时。
比如你单击一个链接,除了触发你的onclick事件(如果你指定的话)以外还要触发一个默认事件就是执行页面的跳转。所以如果
你想取消对象的默认动作就可以return false。
我们也常用return false来阻止提交表单或者继续执行下面的代码。
function a(){
if(true){
return false;
}
}
function Test(){
a();
b();
c();
}
即使a函数返回return false 阻止提交了,但是不影响 b()以及 c()函数的执行。在Test()函数里调用a()函数,那面里面
return false 对于Test()函数来说,只是相当于返回值。而不能阻止Test()函数执行。
总之:return false 只在当前函数有效,不会影响其他外部函数的执行。
总结
return true;返回正常的处理结果;终止处理。
return false;返回错误的处理结果;终止处理;阻止提交表单;阻止执行默认的行为。
return;把控制权返回给页面。
我觉得这个篇文章非常的不错,就拿过来了,再次感谢原作者(李星儒の)的分享!
相关文章
- JavaScript中变量的相互引用
- javascript原型的改动与重写(覆盖)区别
- 【JavaScript】attribute和property的区别(包括Dom详解)
- 在Js(JavaScript)和aspx中引用Asp.Net的.cs文件中传过来的变量参数!(实例)
- 【JavaScript】JS_Object跟Function的区别
- 【JavaScript】apply和call的区别在哪?
- 【JavaScript】Understanding callback functions in Javascript
- 【JavaScript】理解与使用Javascript中的回调函数
- javascript----bug
- javascript:history.go()和History.back()的区别
- 用自然语言的角度理解JavaScript中的this关键字
- Javascript模块化编程之路——(require.js)
- 《JavaScript面向对象精要》——1.2 原始类型
- TypeScript 与 JavaScript 的区别(TypeScript万字基础入门,了解TS,看这一篇就够了)
- JavaScript或jQuery模拟点击超链接和按钮
- 用Javascript获取页面元素的位置
- JavaScript定时器详解及实例
- JavaScript ES6中export及export default的区别
- JavaScript小技巧:合并变量赋值、&&运算符判断巧用、前端语音播报、package.json中^,~的区别、利用 new URL 解析URL
- 浅析JavaScript中in操作符(for in/for of)、Object.keys()和Object.getOwnPropertyNames()的区别
- 华为OD机试 - 报数(JavaScript) | 机试题+算法思路+考点+代码解析 【2023】
- 15款不容错过的前端开发Javascript和css类库 - 2017版本~
- 【javascript】substr和substring的使用区别
- JavaScript引用类型之Array数组的concat()和push()方法的区别
- 深入理解JavaScript系列(48):对象创建模式(下篇)
- javascript的严格模式
- JavaScript document.write 与 document.writeln 的区别