来源:https://segmentfault.com/q/1010000022457622

    箭头函数不是没有 arguments ,而是没有自己的 arguments ,自己的这个限定语很重要。

    1. function foo() {
    2. setTimeout(() => {
    3. console.log("args:", arguments);
    4. }, 1);
    5. }
    6. foo(1, 2, 3, 4);

    你会在箭头函数里得到 args: [1, 2, 3, 4],它来自于其父作用域。并且连 this、super、new.target 都没有自己的,全都来自父作用域。