return的用法?

2019/7/23 10:01:46 人评论 次浏览 分类:学习教程

这里是修真院前端小课堂,每篇分享文从

八个方面深度解析前端知识/技能,本篇分享的是:

【return的用法?】

大家好,我是IT修真院上海分院第9期的学员王刚,一枚正直纯洁善良的前端程序员,今天给大家分享一下,修真院官网JS任务4,深度思考中的知识点——return的用法是什么?若用在for循环中,还会执行下一次循环吗?

1、背景介绍

什么是return?

return 语句会终止函数的执行,并返回函数的值。

语法:return value;

可选项 value指定返回的值。如果忽略则返回undefined.

在函数中 ,return 语句用于终止一个函数的执行,并返回值value。如果value被省略,

或在函数内没有 return 语句被执行,则函数返回undefined

2.知识剖析

return语句的用法

1、中止函数的执行,并返回函数执行的结果

语法为:return+表达式

return 返回的值可以是任何数据类型

2、使用return阻止某些浏览器默认的行为

语法为:return false;

这种用法通常用于阻止表单的提交。

在提交表单前,我们需要先校验客户提交的数据,格式是否正确,或者需要对这些数据进行一个处理再提交,这时候就需要先阻止下默认提交表单的行为 例如下面的例子:

3.常见问题

break、continue和return的区别

4.解决方案
break 停止了这个for循环,跳出循环来继续执行fn函数里之后的语句
continue 只是停止了当前循环,继续执行后面的循环,当循环执行完继续执行fn函数里之后的语句
return 停止了这个for循环,跳出循环并且停止执行fn函数里后边的语句

5.编码实战

                            function fn() {
                                for(var i = 0; i < 5; i++) {
                                    if(i == 3) {
                                        break;//continue;//return
                                    }
                                    console.log(i);
                                }
                                console.log("ha")
                            }
                            fn();

6.扩展思考
jq的return false 和原生的return false有什么区别?

在jq中使用return false实际上它完成了3件事:

1.event.preventDefault()

2.event.stopPropagation()

3.终止函数的执行并返回结果。

jq的return false会同时阻止浏览器默认事件的发生,阻止事件的冒泡,并且返回函数值,而在原生js中,return并不能阻止事件的冒泡.

7.参考文献
参考1:event.preventDefault() vs. return false

参考2:javascript中break,continue和return语句用法小结

参考3:return的用法

8.更多讨论

Q1:switch 语句中可以使用return吗?也是和break起到一样的作用和效果吗?

A1:return只能使用在函数内使用,如果在单纯的switch语句内使用则会报错。若嵌套在函数或者循环语句内就不会报错。

Q2:除了return,还有啥可以让for循环中断?

A2:除了return之外,还有break 语句和continue语句可以跳出循环。

Q3:函数中在某段代码前 return, 后面的代码还有变量提升吗?

A3:函数在执行到return语句后就会立马退出,在return后面的代码将不再执行,所以在return后不会有变量提升。。

相关资讯

    暂无相关的资讯...

共有访客发表了评论 网友评论

验证码: 看不清楚?
    -->