Closed tokisakiyuu closed 4 years ago
这里有个比较有趣的知识,console.log(Function.length)会返回函数定义的参数个数。值跟在函数体内执行arguments.length一样。
声明时定义5个参数:
function foo(a,b,c,d,e) { console.log(arguments.length) }
Function.length的值:
console.log(foo.length); // => 5
局部作用域中arguments.length的值:
foo("t")' // => 1 foo("t", "y")' // => 2 foo("t", "y", "p") // => 3 foo("t", "y", "p", "o") // => 4 foo(1, 2, 3, 4, 5, 6, 7, 8, 9) // => 9
Function.length 和 arguments.length 并没有直接的关联,Function.length是函数声明时声明的参数的个数,arguments.length是函数调用时传入的参数个数
值跟在函数体内执行arguments.length一样。
我把这一句删掉。
声明时定义5个参数:
Function.length的值:
局部作用域中arguments.length的值:
Function.length 和 arguments.length 并没有直接的关联,Function.length是函数声明时声明的参数的个数,arguments.length是函数调用时传入的参数个数