函数的不定参数

195 阅读1分钟

arguments为函数的实参列表;但是可以赋值;function sum(){
            var result = 0;
            for(var i = 0;i<arguments.length;i++){
                result += arguments[i];
            }
            console.log(result);
        } 
        sum(1,2,3,4,5,6,7,8,9,10);

arguments为函数的实参列表;
function sum(a,b){
            //arguments [1,2]
            //var a = 1;
            a = 2;
            arguments[0] = 3;
            console.log(a);
        }
        sum(1,2);
此时输出结果为3;
arguments与形参是一个变另一个跟着变;两个参数相同时达到映射关系;
例如:a有实参
function sum(a,b){
            a = 2;
            console.log(arguments[0]);
        }
        sum(1);
b没有实参,则arguments不会跟着变。
function sum(a,b){
            b = 2;
            console.log(arguments[1]);
        }
        sum(1);