因为后面有 var 进行了变量声明,所以匿名函数所访问的 name 是函数内声明的 name。即便声明语句实际上并没有被执行。比如
var name = "outer";
(function () {
console.log(name);
if (false) {
var name = "inner";
}
console.log(name);
})();
Ctrl-C + 1,小拇指就是这么摁废的。
读书的时候用的是 Arch。现在干活的机器上跑的是 Debian。@terrywang 说的没错,拿来干活的发行版要靠谱,稳定。像 Arch 偶尔过个几个月来次大变动现在可没时间去折腾。
各位看官好仁慈阿,这样的帖子在别的地方发会被喷死的。