为什么JavaScript中的function.apply.length 2?

Tam*_*lan 3 javascript function apply

当我在控制台上运行此代码时:

(function test(){
   console.log(function(){}.apply.length);
})();
Run Code Online (Sandbox Code Playgroud)

输出是: 2

我读到了函数长度.我理解MDN上的函数长度部分.但我不明白这一点.功能中没有参数.为什么输出2?

小智 5

这是因为你问对.lengthFunction.prototype.apply,这是2它的thisArg和它的必要参数.

19.2.3.1Function.prototype.apply(thisArg,argArray) <-- two parameters