关于词法作用域,判断以下代码输出
更多描述
var scope = "global scope";
function checkScope() {
var scope = "local scope";
function f() {
return scope;
}
return f;
}
checkScope()();
Issue 欢迎在 Gtihub Issue 中回答此问题: Issue 588
Author 回答者: shfshanyue
local scope
由于 js 为词法作用域(Lexical Scope),访问某个变量时,先在当前作用域中查找,如果查找不到则在嵌套作用域中查找,直到找到。如果找不到,则报 ReferenceError。