函数的传入的参数(实参和形参)

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)

        

   

 

  

   

转载于:https://www.cnblogs.com/Ycc9/p/5363250.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值