分享人:冯亚超
目录
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
return 语句从当前函数退出,并从那个函数返回一个值。
语法:
return[()[expression][]];
可选项 expression 参数是要从函数返回的值。如果省略,则该函数不返回值。
用 return 语句来终止一个函数的执行,并返回 expression 的值。如果 expression 被省略, 或在函数内没有 return 语句被执行,则把值 undefined 赋给调用当前函数的表达式。
return作为返回关键字,它有以下两种返回方式
语法为:return+表达式
语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果。
function add(){
var a=1;
var b=2;
return a+b;
}
function fun(){
console.log(add())
}
fun();
return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值, 由return后面的参数指定。return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。
语法为:return;
通常情况下return后面跟有表达式,但是并不是绝对的。此情况就是单纯的将控制权转交给主调函数继续执行。
在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为。 例如,默认情况下点击一个a元素,页面会跳转到该元素href属性指定的页。
<a href="http:www.baidu.com;alert(11);return false;alert(22)">链接</a>
在js中,我们常用return false来阻止提交表单或者继续执行下面的代码。 例如下面的例子:
function a(){
if (Ture)
return false;
};
function Test(){
a();
b();
c();
};
即使a函数返回return false 阻止提交了,但是不影响 b()以及 c()函数的执行。在Test()函数里调用a()函数,那么 return false 对于Test()函数来说,只是相当于返回值,而不能阻止Test()函数执行。
代码示例:
function test() {
result = [];
for (i = 0; i < 10; i++) {
result.push(i);
return result;
}
}
console.log(test());
我们可以看到,for循环只返回return所返回的值,并不会执行下一次循环。
除了return之外,还有哪些语句可以跳出循环?
break
for(var i=0;i<=10;i++){
if(i==5){break;}
console.log(i);
}
上面这个break实例,输出的结果为:12345,当i的值等于5的时候直接通过break跳出了循环,不再继续往下运行。
continue
for(var i=1;i<=10;i++){
if (i == 6) continue;
console.log(i);
}
上面这个continue实例,输出的结果为:1234578910,当i的值等于6的时候直接跳过,继续执行循环。
参考2:javascript中break,continue和return语句用法小结
参考2: js中return的用法
讨论点1:同样是跳出循环,return和break有什么区别?
讨论点2:同样是中断执行,return和return false有什么区别?
讨论点3:在什么应用场景下我们会用到break或continue?
1:break只能跳出当前的循环,但不跳出函数.return表示中止当前函数的运行,并将操作权返回给调用者
2:return false,事件处理函数会取消事件,不再继续向下执行。比如表单将终止提交。return false就相当于终止符,return true就相当于执行符.
3:break是结束整个循环体;continue只能用于循环内部,作用是跳过当前循环的后面的内容,继续下一次循环判断。
感谢大家观看
BY : 冯亚超