参数对象

箭头函数不公开参数对象; 因此,arguments 只会引用当前范围内的变量。

const arguments = [true];
const foo = x => console.log(arguments[0]);

foo(false); // -> true

因此,箭头函数也不知道他们的呼叫者/被呼叫者。

虽然缺少参数对象可能是某些边缘情况的限制,但休息参数通常是合适的替代方案。

const arguments = [true];
const foo = (...arguments) => console.log(arguments[0]);

foo(false); // -> false