函数返回值return详解—JS学习笔记2015-6-16(第58天)

一、return

return后面接的实际上就是一个数据类型

<script>

// fn1(); =>100

alert(fn1().length);

function fn1(){

// return 100;

return ‘miaov‘;

}

</script>

1)、函数名+(): fn1() ==> return后面的值;

2)、return 实际上是所有函数内一个隐藏的属性,默认返回undefined;

3)、return 后面的任何代码都不会执行。

二、arguments

fn1(1,2,3);  // 实参

function fn1(a,b,c){  // 形参

// arguments  实际上是一组实参的集合;[1,2,3];

alert (arguments.length);  // 但它实际上是个对象,但是拥有数组的属性,比如length;

}

// 当函数的参数个数无法确定的时候用arguments

alert( sum(1,2,3));

alert( sum(1,2,3,4));

function sum (){ // 这里的参数值无法确定下来;

var n = 0;

for( var i=0; i<arguments.length; i++){

n += arguments[i];

}

return n;

}

与作用域的关系;

var a = 1;
function fn2( a ){
    arguments[0] = 3;
    alert(a);                   // 3
    var a = 2;
    alert( arguments[0] );     // 2
}
fn2(a);
alert(a);                        // 1

既能读取,也能修改;

这里提一下 如果没有放参数的情况:

var a = 1;
function fn2(){
    alert(a);                // undefined  涉及到作用域的问题;
    var a = 2;
}
fn2(a);
alert(a);                    // 1

当函数里面放了参数,就相当于用了arguments:

var a = 1;
function fn2( a ){
    alert(a);             // 1   这里相当于在alert(a);之前加上了arguments[0] = 1
    var a = 2;
}
fn2(a);
alert(a);                // 1
时间: 2024-08-03 09:03:31

函数返回值return详解—JS学习笔记2015-6-16(第58天)的相关文章

赋值运算符函数的返回值类型详解

在c++赋值运算符函数的学习中,对于返回值类型的问题,一直非常费解,今天彻底总结一些每种不同返回值类型的结果: 1.当返回值为空时: <span style="font-size:14px;">void hasptr::operator=(const hasptr& s)</span> 这个时候如果只有一个'='(a = b)运算那就没问题,但是如果存在'='(a = b = c)的链式操作时,编译器就会报错 我们看:a = b = c: 程序会先运行

[转]C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解

本文转自:http://www.cnblogs.com/landeanfen/p/5501487.html 阅读目录 一.void无返回值 二.IHttpActionResult 1.Json(T content) 2.Ok(). Ok(T content) 3.NotFound() 4.其他 5.自定义IHttpActionResult接口的实现 三.HttpResponseMessage 四.自定义类型 五.总结 正文 前言:已经有一个月没写点什么了,感觉心里空落落的.今天再来篇干货,想要学

JAVA函数的返回值类型详解以及生成随机数的例题

函数的四要素:函数名.输入.输出(返回).加工. 函数分为两种:一种是有返回值得函数,一种是没有返回值的函数. 1. 定义:没有返回值的函数:(当我不需要函数的计算结果再拿出来进行运算的时候,我就不需要有返回值,直接在函数中运算完成加工即可) static void 函数名(参数){ 函数体 } 调用:调用没有返回值的函数: 函数名(实际参数): 在函数中的参数叫做虚参,我们需要给他一个实际的参数才能完成整个运算流程. 例如:我要打印一两个数字的和? public class HS { publ

Web Api 接口返回值不困惑:返回值类型详解

前言:已经有一个月没写点什么了,感觉心里空落落的.今天再来篇干货,想要学习Webapi的园友们速速动起来,跟着博主一起来学习吧.之前分享过一篇 WebApi 接口参数:传参详解,这篇博文内容本身很基础,没想到引起很多园友关注,感谢大家的支持.作为程序猿,我们都知道参数和返回值是编程领域不可分割的两大块,此前分享了下WebApi的传参机制,今天再来看看WebApi里面另一个重要而又基础的知识点:返回值.还是那句话:本篇针对初初使用WebApi的同学们,比较基础,有兴趣的且看看. 使用过Webapi

python之路——函数返回值return

return关键字 没有返回值 返回一个值 返回多个值 1.没有返回值 ----不写return的情况下,会默认返回一个None:下面的函数,就没有写return,这就是没有返回值的一种情况. #函数定义 def mylen(): """计算s1的长度""" s1 = "hello world" length = 0 for i in s1: length = length+1 print(length) #函数调用 str_

C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解

原文地址:http://www.cnblogs.com/landeanfen/p/5501487.html 使用过Webapi的园友应该都知道,Webapi的接口返回值主要有四种类型 void无返回值 IHttpActionResult HttpResponseMessage 自定义类型 此篇就围绕这四块分别来看看它们的使用. 一.void无返回值 void关键字我们都不陌生,它申明方法没有返回值.它的使用也很简单,我们来看一个示例就能明白. public class ORDER { publi

WebApi 接口返回值不困惑:返回值类型详解。IHttpActionResult、void、HttpResponseMessage、自定义类型

首先声明,我还没有这么强大的功底,只是感觉博主写的很好,就做了一个复制,请别因为这个鄙视我,博主网址:http://www.cnblogs.com/landeanfen/p/5501487.html 使用过Webapi的园友应该都知道,Webapi的接口返回值主要有四种类型 void无返回值 IHttpActionResult     (需要MVC高版本才会支持,VS2012/2013不支持,请升级DLL文件或者到VS2015开发环境) HttpResponseMessage 自定义类型 此篇就

window.showModalDialog返回值和window.open返回值实例详解

最近在谷歌浏览器下发现一个问题,就是使用谷歌浏览器已经不兼容window.showModalDialog了,所以还是改成使用window.open(). 一.window.showModalDialog实例: 1.父页面:js var returnValue=window.showModalDialog("selectUserList.jsp?order_id="+order_id+"&appID="+appID+"&prod_name=&

《TCP/IP详解》学习笔记一(1-7)

以前上大学的时候学习过网络协议,对于其中报头的格式,完全是不解其意,只是囫囵吞枣记住样子拿去考试. 后来工作后在前人的指点下开始学习<TCP/IP详解>,但是当时对网络编程一点经验都没有,只是造着例子填代码,所以虽然通读了一遍,但是和没看几乎没有什么两样--因为看不懂. 现在回过头来重新来读,发现很多东西都基本能看懂了,就算有不明白的,多看2遍也就明白了.结合抓包,更能解释自己以前对这些协议的困惑,的确是一本好书,难怪以前好多人推荐我去读. 以书为主,结合抓包,记录笔记. 链路层抓不到包,暂时