如果我们在普通函数中打印arguments变量的输出:
var func = function() { console.log(arguments); }
func();
结果是一个对象,其中包含有关上下文的信息(参数值,范围,functionLocation ...)
但是如果我们用胖箭头重现相同的函数,我们将永远不会声明参数:
var func = () => { console.log(arguments); }
func();
// arguments is not defined
任何人都可以解释我们如何从箭头函数中获取上下文数据?
答案 0 :(得分:3)
根据MDN
箭头函数表达式的语法短于函数表达式,并且没有自己的 this ,参数, super ,或 new.target 。这些函数表达式最适合非方法函数,不能用作构造函数。