return的用法是什么?

原创 2018年04月16日 10:51:37

大家好,我是IT修真院的学员,一枚正直纯洁善良的web前端程序员。

今天给大家带来的是return的用法是什么?


1.背景介绍

return

表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。 return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码), 主调函数可以通过返回值判断被调函数的执行情况。

2.知识剖析

返回值是必须有的,作用就是把固定不变的。常用的代码封装起来 写在类里 每次用到的时候就调用就行了 如果需要这个共能返回一个值, 甚至一个对象 就需要用返回值了就是用return来把把值返回给调用的者return 语句会终止函数的执行并返回函数的值。
                
                    比如:
                    function a(){
                    return 10;//这个时候,函数a的值会等于10,并且函数中下面的内容不再执行
                    document.write(50);//由于上面已经return了,这条代码不会执行
                    }
                
                
至于什么时候会用到,那看你要函数来做什么,你要他返回值就返回咯,不要他返回就不返回咯! 比如,用函数来做一个加法运算,需要他返回值,那就这样
                
                    function  a( b, c ) {
                    return b  + c;
                    }
                    那么调用:
                    var abc = a(5, 80);
                    这个时候,abc这个变量的值会是85
                    如果想直接输出结果,不要返回值那就
                    function a( b, c ) {
                    document.write( b + c );
                    }

                    这个时候调用, var abc = a(5, 80);
                    那么页面会输出85,但abc是没有值的;
                
                
也可以说默认函数是没有返回值的。 通常函数经过一系列处理后需要给外部返回一个值或者对象

                比如function sum(a,b){return a+b};
                alert(sum(1,2))==>3
                        
如果没有return将会弹出undefined

3.常见问题

若用在for循环中用到了return,还会执行下一次循环吗?

4.解决方案

                
                    function counter() {
                    for (var count = 1;  count++) {  // infinite loop
                    console.log(count + "A");

                    return;                         //直接就返回了,下面的代码不会再执行

                    console.log(count + "B");
                    }
                    console.log(count + "C");
                    }

                    counter();

                    // Output:
                    // 1A
                
                

中断功能,函数立即停止在该点return被调用。

                
                    function counter() {
                    for (var count = 1; ; count++) {  // infinite loop
                    console.log(count + "A"); // until 5
                    if (count === 5) {
                    return;
                    }
                    console.log(count + "B");  // until 4 (因为在5的时候,就已经return了)
                    }
                    console.log(count + "C");  // never appears (因为这个c写在了for循环的外面)
                    }

                    counter();

                    // Output:
                    // 1A
                    // 1B
                    // 2A
                    // 2B
                    // 3A
                    // 3B
                    // 4A
                    // 4B
                    // 5A
                
                

5.编码实战

                
                    function abc(a,b) {
                    var c = a + b;
                    return c;
                    }
                    var d=abc(5,9);
                    alert(d);===>14;
                
            

6.扩展思考

除了return,还有哪些可以让for循环中断呢?

就是break 跟 continue ;

break

break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。 由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。 如果一个循环的终止条件非常复杂,那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多。

continue

continue语句和break语句相似。所不同的是,它不是退出一个循环,而是开始循环的一次新迭代。 continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误!

[dié dài]

迭代

迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。 每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。

函数

在数学中,迭代函数是在碎形和动力系统中深入研究的对象。迭代函数是重复的与自身复合的函数,这个过程叫做迭代。

7.参考文献

参考:峰峰师兄

参考:冲冲老师

《Javascript DOM 编程艺术》

8.更多讨论

什么是迭代,或者你已经联想到了递归,想深入了解「递归」和「迭代」有哪些区别?

参考:我是冲冲,我为疑难杂症代言!点我


问题:

1: 函数必须有return吗?

答:不是,需要返回值的时候就用不需要的时候可以不用

2:return和break的区别是什么?

答:点击打开链接

3: return返回的数据类型取决于什么

答:函数

4: js 中,不使用数组,不使用对象,可以 return 多组值吗?

答:不行,遇到第一个return就退出语句不会再往下执行,会直接给一个返回值

计算机基础win7的基本用法

-
  • 1970年01月01日 08:00

c++中关于return的用法总结

 return是C++预定义的语句,它提供了种植函数执行的一种放大。当return语句提供了一个值时,这个值就成为函数的返回值.     turn,有必要提及主函数的定义。很多人甚至市面上的一些书籍,...
  • lchunli
  • lchunli
  • 2009-11-08 16:23:00
  • 11183

PHP中return用法详细解读

在大部分编程语言中,return关键字可以将函数的执行结果返回,PHP中return的用法也大同小异,对初学者来说,掌握PHP中return的用法也是学习PHP的一个开始。 首先,它的意思就是返...
  • fjnjxr
  • fjnjxr
  • 2016-09-12 13:36:10
  • 1977

java中return用法总结

Java中return用于方法,两个作用:    (1)返回方法指定类型的值(这个值总是确定的),也可以是对象    (2)方法的结束 两种形式:(1)有返回类型 例如:return i; ...
  • xiaoxingfu0604
  • xiaoxingfu0604
  • 2016-11-07 16:42:01
  • 10708

python 浅析对return的理解

最近很忙,但是还是很认真的学习python这个东西,不是出于什么目的,只是单纯的喜欢罢了。最近学习的东西比较简单,但是也遇到了一些问题,就是比较迷惑人的问题,今天小编就在这里讲讲自己的对return的...
  • aa3214567
  • aa3214567
  • 2017-09-06 18:53:51
  • 2048

Jsp中使用return时应注意

800x600 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE ...
  • wgw335363240
  • wgw335363240
  • 2011-06-24 22:09:00
  • 6745

js中return的作用及用法

转:http://www.cnblogs.com/AKI-LILI/p/6047870.html 这里面的return含有一些细节知识: 例如:onClick='return ...
  • pzasdq
  • pzasdq
  • 2017-01-05 15:21:04
  • 870

C#中return语句的使用方法

C#中return语句的使用方法return语句终止它所在的方法的执行,并将控制权返回给调用方法,另外,它还可以返回一个可选值。如果方法为void类型,则可以省略return语句。return语句后面...
  • david_520042
  • david_520042
  • 2010-11-22 10:59:00
  • 3979

RETURN的用法43434

  • 2008年09月06日 18:17
  • 52KB
  • 下载

matlab中的return和break

在一般程序语言中,return和break有特定的使用区域,不过在Matlab中return和break可以写成主语句,并不一定费得写在函数中或循环语句中。这一点和其它语言有很大的不同。   A=...
  • jkhere
  • jkhere
  • 2013-04-22 19:22:16
  • 3247
收藏助手
不良信息举报
您举报文章:return的用法是什么?
举报原因:
原因补充:

(最多只允许输入30个字)