合并展开运算符:

...   三个点就是合并展开运算符
写在 函数的形参中,作用是 合并运算符
写在 函数的实参赋值中,作用是 展开运算符

合并运算符,作用于 arguments 类似

... 是 将 定义的对应的实参,以伪数组的形式,存储在形参中
可以只存储一部分的实参
        // 合并运算符
        // 第一个实参存储在num1中,第二个实参存储在num2,其他所有的实参,存储在arr中
        function getAdd1( num1 , num2 , ...arr ){
            console.log(num1);
            console.log(num2);
            console.log(arr);
        }
        getAdd0(1,2,3,4,5,6,7,8,9,10);

arguments 会存储所有的实参

箭头函数,没有 arguments 要是数值的形式存储实参 / 不定项函数,也就是不确定实参个数的函数
必须要使用 ... 合并运算符
        // 箭头函数没有 arguments 只能使用 ... 合并运算符
        // var fun2 =  ()=>{
        //     console.log( arguments );
        // }
        // fun2(1,2,3,4,5);
        var fun3 = (...arr)=>{
            console.log(arr);
        }
        fun3(1,2,3,4,5);

展开运算符,定义在 函数的实参中 , 一般是 ...数组

作用是将数组中的每一个单元,存储的数据,一一对应的赋值给函数形参
        // 展开运算符
        function fun4(a,b,c,d,e,f,g){
            console.log(a,b,c,d,e,f,g) ;
        }
        var arr = [7,6,5,4,3,2,1];
        fun4(arr[0] , arr[1] , arr[2] , arr[3] , arr[4] , arr[5] , arr[6] );
        // 展开运算符
        // JavaScript程序,会自动获取,数组arr中,每一个单元存储的数据
        // 按照顺序,一一对应赋值给 函数fun4的形参
        fun4( ...arr );

一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。