zoukankan      html  css  js  c++  java
  • 函数的传入的参数(实参和形参)

    function a(x,y){return x+y};

    调用a(20,30)

    形参指的是函数定义的参数,也就是x和y。实参是指传入的参数也就是20和30

    1,可选形参

         a)  函数声明为两个形参function a(x,y){},但是调用时可能之传入a(1),第二个被忽略的参数将被传入undefined。

         b)  注意:在参数可选时,在函数里注意判断是否为undefined。

    2,可变长的实参列表

        a) 如果实参的长度大于形参,可以用arguments得到所有的实参。否则多余的实参会被忽略掉。

                arguments是实参对象,可以像数组一样通过下标取到所有的实参,例如:(取最大值)

                function max(/*....*/){

                    var max=Number.NEGATIVE_INFINITY;//表示负无穷
           for(var i=0;i<arguments.length;i++)
              if(arguments[i]>max){max=arguments[i]}
             return max

                   }

              var ma=max(12,2222,14,454,633)   //返回值为2222

     3,对象属性作为实参(在形参比较多时)

           也就是把要传递的参数以键值对的形式封装成对象,需要用时直接传递对象。

     4, 可以把函数作为参数

            a,函数可以赋值给另一个函数   例如:

                 function square(x){return x*x}

                 var s=square;   //现在s和square指向同一个函数

                 suqare(4);   //16

                  s(4)            //16

            b, 函数作为参数

               function add(x,y){return x+y}

               function subtract(x,y){return x-y}

               function op(opt1,opt2,opt3){//opt1传入一个函数

                      return opt1(opt2,opt3)

                } 

               调用:op(add,2,3)            //相当于add(2+3)

                       op(add,op(add,2,3),op(subtract,2,3))     //相当于(2+3)+(2-3)

            

       

      

       

  • 相关阅读:
    跨域
    redis安装
    iframe操作
    element-ui 合并相邻的相同行 span-method
    函数实现 a?.b?.c?.d
    git 使用流程 命令
    svg用作背景图
    js中的位运算符 ,按位操作符
    二十三种设计模式[23]
    二十三种设计模式[22]
  • 原文地址:https://www.cnblogs.com/Ycc9/p/5363250.html
Copyright © 2011-2022 走看看