arguments的理解

argument 指的是传入函数(非箭头函数)的实参。

argument是类数组,但是不是数组,

const enheng = function(a,b,c,d) {
console.log('fargsh==',Array.isArray(arguments));//false
console.log(arguments) // 类数组1,3,5 console.log(...arguments) // 1,3,5  } enheng(1,3,5);

利用扩展运算符可把传入的实参变为数组。

const enheng = function(...arg) {
    console.log('fargsh==',Array.isArray(arg));//ture

      console.log(arg)
      console.log(...arg)

    }
    enheng(1,3,5);

等同于下面的代码

const enheng = function() {
      const newArg = Array.from(arguments);
    console.log('fargsh==',Array.isArray(newArg));//true

      console.log(newArg) // [1, 3, 5]

      console.log(...newArg) //  1 3 5

    }
    enheng(1,3,5);
原文地址:https://www.cnblogs.com/jwenming/p/14496393.html