我在其中编写了一个带闭包的函数,我还编写了另一个函数。
function argum(){
let ist = arguments[0];
return function(){
return ist + ' ' + arguments[0]
}
}
function logAll(){
console.log(arguments.length);
}
var sh = argum('hello')
sh('world')
logAll(2,4,5,6,7)
如上所示,但我无法理解为什么第一次调用闭包生成undefined。同时如果我重写像这样的代码
function argum(){
let ist = arguments[0];
return function(){
return ist + ' ' + arguments[0]
}
}
function logAll(){
console.log(arguments.length);
}
logAll(2,4,5,6,7)
var sh = argum('hello')
sh('world')
它似乎工作正常。有什么暗示在那里发生的事情?还可以使用您的浏览器开发工具来运行此代码,以便更好地了解所要求的内容。