1. <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript">
  2.  
  3. /**
    *
    * js函数
    *
    * java:
    * public [static] return_type method_name([params]){
    * return "";
    * }
    *
    * JS:
    * function function_name([params]){
    * return undefined; 默认返回该值
    * }
    *
    * 在js中 声明方法 需要用function关键字标识
    * 方法的默认返回值是 undefined
    *
    * 如果要返回数据 则需显示指定return
    *
    * 在js中 函数没有重载的概念
    *
    * 如果在一个对象中出现多个同名的函数的时候 它的生效的函数是 最后解析的那一个函数
    *
    * 参数的匹配方式
    * 首先 参入的参数会和形式参数进行匹配
    * 第一种 个数相同的情况 形参和实参就会一一匹配
    * 第二种 形参个数大于实参个数的时候 多余的形参的默认值是undefined
    * 第三种 形参个数小于实参个数 多余的实参会被丢弃掉
    *
    * 不管形参的情况 所有传入的参数都会被封装到arguments对象中 他有点像可变参数
    *
    * 以函数式声明的函数一定要给定函数名
    *
    *
    * 在js 函数就是对象
    *
    *
    *
    */
    function test(){
  4.  
  5. }
    /* function add(n1,n2){
    return n1+n2;
    }*/
    /*function add(n1){
    console.log(arguments);
    return n1+100;
    }*/
    var n1 = add(200);
  6.  
  7. var n2 = add(200,200);
    var n3 = add(200,200,100);
    var n4 = add(200,200,200,500);
    console.log(n1);
    console.log(n2);
    console.log(n3);
    console.log(n4);
    /**
    * 采用该种方式声明的方法 可以在任何地方调用
    * @returns {*}
    */
    function add(){
    var args = arguments;
    if(args.length===1){
    return args[0]+101;
    }else if(args.length === 2){
    return args[0]*args[1];
    }else{
    return "还没有被实现";
    }
    }
    </script>
    </head>
    <body>
  8.  
  9. </body>
    </html>

js中函数传参的情况的更多相关文章

  1. [js]js中函数传参判断

    1,通过|| function fun(x,y){ x=x||0; y=y||1; alert(x+y); } fun(); 2.通过undefined对比 function fun(x,y){ if ...

  2. Vue.js中组件传参的方法 - 基于webpack模板

    在Vuejs中, 组件之间的传参是今天第一次接触, 之前写的组件互相之间都是独立的, 弗敢专也, 必以分人 环境: node.js npm vue-cli 以上安装请自行百度 一.项目创建 $ vue ...

  3. 兼容性js中setTimeout 传参“保值”方案

    这里所谓“保值”,是指在setTimeout中指定的时间后,执行指定的方法所用到的“参数”值,跟执行setTimeout时该“参数”值一样.是不是有点懵?看如下例子: ================ ...

  4. 关于C中函数传参的一点理解

    一般来说c传值分为传值与传指针,Java里没有指针,因此只有传值,但是Java里传值分为简单变量传值和引用型变量传值,从本质上来说这两者没啥区别. 下面主要说的是传参时对原变量的影响: 最初练习创建单 ...

  5. 验证python中函数传参是引用传递

    定义: 值传递(pass by value)是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数. 引用传递(pass by reference)是指在 ...

  6. JS——变量和函数的预解析、匿名函数、函数传参、return

    JS解析过程分为两个阶段:编译阶段.执行阶段.在编译阶段会将函数function的声明和定义都提前,而将变量var的声明提前,并将var定义的变量赋值为undefined. 匿名函数: window. ...

  7. js中函数的参数为函数的情况即回调函数

    js中函数的参数可以是数组对象也可以是函数,当参数为函数时我们叫做回调函数 //定义回调函数function B() { console.log("函数B")setTimeout( ...

  8. python中给函数传参是传值还是传引用

    首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传 ...

  9. C语言 指针在函数传参中的使用

    int add(int a, int b)   //函数传参的时候使用了int整型数据,本身是数值类型.实际调用该函数时,实参将自己拷贝一份,并将拷贝传递给形参进行运算.实参自己实际是不参与运算的.所 ...

随机推荐

  1. 搭建openwrt_x86虚拟机环境

    1.下载源码 http://downloads.openwrt.org/snapshots/trunk/x86/openwrt-x86-generic-combined-ext4.img.gz 2.格 ...

  2. 静态编译opencv3.4.0

    问题: 编译了静态库之后可以不要那么多dll 解决办法: 其实和编译动态库的区别就在于: Cmake里面操作的时候,去掉下面这个选项的勾勾 BUILD_SHARED_LIBS

  3. asp.net Repeater使用例子,包括分页

    <style type="text/css">    .tab{border-collapse:collapse; margin:0 auto;}    .tab th ...

  4. C# OracleBulkCopy 批量插入oracle数据库的方法

    只有安装了oracle 11G客户端的机器上才可以用,要用到ODP.NET组件中的oracleDataAccess.DLL,命名空间引用为Oracle.DataAccess.Client; 引用:Or ...

  5. theme为dialog的Activity如何充满全屏

     转自:http://blog.csdn.net/fzh0803/article/details/9787615 分类: android_点滴记录2013-08-06 10:33 2005人阅读 评论 ...

  6. Log4j2的基本使用

    Log4j2是Log4j1.x的的升级版,其中也有很大的不同,最大的区别就是由以前的properties配置文件改为xml/json/yaml配置文件. 其中配置文件的位置官方说明如下: Log4j ...

  7. Java\学习——字符串

    import java.util.Scanner; public class cys1 { /** * @param args */ public static void main(String[] ...

  8. [转]SQL Server 中 Cast 与 Convert

    两者都用于:将一种数据类型的表达式转换为另一种数据类型的表达式. 安装有 Sql Server 2008 时可以浏览:ms-help://MS.SQLCC.v10/MS.SQLSVR.v10.zh-C ...

  9. 深度优先搜索DFS(二)

    总结下图里面的常用模板: DFS(u){ vis[u]=true; for(从u出发能到达的所有顶点v){ if(vis[v]==false){ DFS(v); } } } DFSTrave(G){ ...

  10. uploadify是通过flash上传,服务器获取type为application/octet-stream

    uploadify是通过flash上传,服务器获取type为application/octet-stream,因此允许上传的类型要加上application/octet-stream