具有以下for循环:
for (var i = 0; i < 3; ++i) {
console.log(i, p);
var p;
p = 42;
}
我期望输出是:
0 undefined
0 undefined
0 undefined
但实际上,输出是:
0 undefined
0 42
0 42
既然我们使用var p
(to redeclare p
) 下一行,为什么行中没有p
undefined (always) console.log
?