我不太清楚为什么会这样,如果有人可以向我解释这一点会很棒。
所以我得到了以下代码:
var text = 'yes';
(function f() {
alert(text);
})();
它按预期警告'是'。但如果我这样扩展它:
var text = 'yes';
(function f() {
alert(text);
var text = 'no';
})();
我非常希望这也能提醒'是'然后覆盖本地范围内的文本变量。但相反,它会提示未定义。
这是在当前的Chrome和Firefox中测试的,所以这似乎是一种想要的行为?!