js之函数的arguments

  • 1.普通函数
function getArg(name,age){
  console.log(arguments)
}
getArg('zzz',18)

输出{"0":"zzz", "1":18},可以看出arguments就是以参数下标为key,参数值为value 组成的对象

  • 2.箭头函数
    箭头函数实际上是没有arguments的
const getArg2 = (name,age) => {
  console.log(arguments)
}

getArg2('zzz',18)

输出的是window或者node对象,这样可能看不出来箭头函数的arguments是什么

我们在箭头函数外面套一个函数再试一下:

function father(fa){
  return getArg2 = (name,age) => {
    console.log(arguments)
  }
}

let res = father('father arg')
res('zzz',18)

输出{"0":"father arg"}
可以明显看出,*** 虽然箭头函数没有aarguments,但是他可以使用父级的arguments ***

posted @ 2021-03-15 14:41  zoo-x  阅读(154)  评论(0编辑  收藏  举报