【发布时间】:2020-04-29 19:19:34
【问题描述】:
考虑以下代码:
function foo (){
var count = 40;
setTimeout(function bar(){
console.log(count)
})
count = 50;
}
foo();
这可以正确打印50,这很好。但是,如果我只是将count 作为参数传递给函数bar,它会打印undefined。为什么它不从词法范围中取值?
function foo (){
var count = 40;
setTimeout(function bar(count){
console.log(count)
})
count = 50;
}
foo(); //Prints undefined
【问题讨论】:
标签: javascript