函数arguments讲解


     // 总结:1- 函数内部有一个实参 arguments 可以获取所有的实参。
     //2- arguments是一个伪数组,如果要使用数组的方法, 将它转为真数组
     // 3-arguments 是一个属性,callee指向函数本身的,arguments.callee输出函数本身,如下
     // 4-arguments只能在函数内部被访问.
     // 5-arguments和函数的形参是对应的。可以在内部修改值 可以直接修改或者通过下标来修改
 

 

   function sum(num1,num2){
            console.log(arguments); //输出 Arguments的属性
            console.log(arguments.callee); //输出函数本身  如下
       }
       sum(1,2);

 

  // 利用arguments.leength求出所有实参的和
    function he(){
        var len=arguments.length;
        var result=0;
        for(var i=0;i<len;i++){
            result+=arguments[i]
        }
        return result;
    }
   console.log( he(1,2,3,4,566,-111)); //465
//对于求和,先定义一个初始值,然后累计相加

 

     // 2.arguments有什么用? 模拟重载的。可以通过arguments参数不同,来做不同的事情
     //    重载: js中没有重载。
     //    js中,如果声明的函数是重名的,那么后面的函数会把前面的函数给覆盖了。
    //    重载:其他语言中,允许函数重名,根据参数的不同(个数、类型、顺序)从而来区分到底调用的是那一个函数。

  

     function test(){
        if(arguments.length == 2){
          //执行这个代码1。做相加
        }else if(arguments.length == 3){
          //执行这个代码2。做相减
        }else {
        //执行这个代码3。
        }
     }
     test(10,20); //执行这个代码1。相加
     test(10,20,30); //执行这个代码3。//相减

 

posted @ 2019-09-23 22:18  南风晚来晚相识  阅读(706)  评论(0编辑  收藏  举报