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